WebSphereMQ一小时快速入门_第1页
WebSphereMQ一小时快速入门_第2页
WebSphereMQ一小时快速入门_第3页
WebSphereMQ一小时快速入门_第4页
WebSphereMQ一小时快速入门_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、WebSphere MQ 一小时快速入门一、什么是中间件中间件是处于应用软件和系统软件之间的通用服务, 是一类以自己的复杂换取企业应用简单化的可复用的基础软件。中间件主要分为消息中间件、应用服务器中间件、交易中间件等等。而今天,笔者晓奕主要向大家介绍的正是IBM 厂商的消息中间件WebSphere MQ。二、WebSphere M喻介Websphere MQ 是 IBM 的商业消息通讯中间件(Commercial Messaging Middleware) 。Websphere MQ 提供一个具有工业标准、安全、 可靠的消息传输系统。 它可实施在广泛的 IBM 和非 IBM平台上,它的功能是控

2、制和管理一个集成的商业应用,使得组成这个商业应用的多个分支程序(模块)之间通过传递消息完成整个工作流程。 通过使用WebSphere MQi户可以简单方便的开发出可靠、 高效的分布 式应用系统。三、WebSphere MQfe要对象消息 是对使用它的应用程序有意义的以字节为单位的字符串。 消息可以用来实现在相同或不同平台上应用程序间的通信。队列 是用于存储消息的数据结构。按功能可以分为本地队列、远程队列、传输队列、模板队列、别名队列、死信队列等等。队列管理器在WebSphere MQ中队列管理器是基本的软件系统,队列管理器可看成是队列和其他对象的容器。通道是一种提供从一个队列管理器到另一个队列

3、管理器的通信路径。它又叫消息通道,用在分布式的队列把消息从一个队列管理器发送到另一个队列管理器。按照定义可以分为发送通道(Sender)、接收通道(Receiver)、服务器通道(Server)、请求器通道(Requester)等。MQS命令是用来管理队列管理器对象,包括队列管理器本身、通道、队列和进程定义。可以使用runmqsc向队列管理器发出 MQSC命令。四、WebSphere M(#系结构WebSphere MQ的体系结构如图所示,它是由许多对象所组成的,主要包括队列管理器、队列、通道、进程定义等对象。队列管理器和DB2数据库中的实例相似,队列管理器好比是数据库实例,队列好比是数据库中

4、的数据表,而消息就好似数据表中的某一行数据。五、本文的任务目标本文完整的演示了 WebSphere MQ的两个最常用的任务。建立和验证一个队列管理器和一个队列的本地安装;白 nnqgput jjnmqggHAPItajqiteue.manaeeruMYflEGEIVER. QUEUE建立和验证使用两个队列管理器(一个作为发送方,一个作为接收方)的服务器至服务器的安装frTSghgmqsputAFItro m.queuft.m(3ridgerFR) WTClGHANNELF. RLELE MYTFWShTQIJELEtoque ue. manageramqs&tAPIMVRECS曰VER. QU

5、ELE六、MQ勺本地安装:注意:WebSphere MQ寸象定义是区分大小写的。如果您是使用MQSCr令以小写方式输入的任何文本会自动转换成大写,除非用单引号将他们引起来。所以请您对照以下例子进行操作的时候,请注意大小 写和单引号的使用,以免影响学习效果。任务概述:使用MQS喻令方式建立队列管理器 to.queue.manager ,同时创建 MYRECEIVER.QUEUBU,并测试往队列中放入和读取消息。定义配置的具体步骤:(1)作为mqm组中的用户登录到shell中;通过输入以下命令创建名为 to.queue.manager的队列管理器,-q参数是指创建为缺省的队列管理器;crtmqm

6、- q to.queue.managerL f aye/cygdrive/d tfertmqni -q t a. Queue, nativetWebSphere MQ队列管理器已创建o创建或替换 tc. Queue.manager 的缺省对象口缺省对莪统计工61个已创建口 0个已替换,0个已失顺口 正在完成设置.设置完成.fayefB/cygdrive/ d 苴命令过程中你将会见到提示信息,它们通知您已经创建了队列管理器并且已经创建缺省的WebSphere MQ对象。(2)查看队列管理器是否已经建立成功,请使用 dspmq命令:dspmqfaye/cygdr ive/d ffdspmqQMNA

7、KE (hers. Queue, manager)STATUS (已立即结束)QMNAHE (there, iineue. jnanager)STATUS (已立即结束)QMNAHE件a. qti#ue.如*“)STATUS (已立即结束)f 全丁白 Woygdrip0Jd #该命令是用来显示系统中存在的队列管理器,如上图所示, to.queue.manager已经建立成功,并处于未运行的状态。(3)要启动队列管理器,请输入:strmqm 或者 strmqm to.queue.managerstrmqm后不加参数,表示启动缺省的队列管理器, 为避免启错对象,建议指定队列管理器来启动:f e./

8、eyirive/d 老总tfmqih.qu色we. manbgefWebSphere MQ队列管趣器七口, tpieum.加亚总的V 正在环动口在日志重放阶段在队列管理器F/qugue.R制链”上访问了 S条日志记录。完成队列管理器 气口. queu%血丽鼻炉工”的日志重放为队列道理器queue.Jianater恢复了事务管理事状强.WebSphere MQ 队列管遇器 sta, queue. i*aiaer?已启动作提示队列管理器已经启动成功,管理员可以继续使用dspmq命令产看队列管理器的状态如下: aycy g drive/ d J # dspmq。加31 (hete. m皿3工)STA

9、TUS (己立即结束)QMNAME (ihere. queue, manacer)STATUS (己立即结束)QMNAKE (to* queue juanaeer)5TATU5 (正在运行)yetVcygdriDe/d 0(4)通过输入下述命令来启用 MQS喻令界面:runmqsc 或者 runmqsc to.queue.managercygdrive/ d Sr unmqsc to. (jueue. Fiaiiager5724-H72 (C) Copynght IBM Corp. 1094, 200S. ALL RIGHTS RESERVED, 月动队列管理舞qusue.mn皿日r的 限文”

10、会显示一条消息通知您已经启动MQSCH舌。出现以上提示后,表示进入了MQSC勺交互管理界面,MQS段有命令提示符,此时,管理员可以对该队列管理器进行相关的命令方式的管理了。(5)通过输入以下命令来建立名为MYRECEIVER.QUEUE本地队列:define qlocal(myreceiver.queue)请注意,MQS中输入的所有小写字符都会自动转换为大写,所以其实我们建立的本地队列是大写的MYRECEIVER.QUEUEt立完毕后,如下图,会显示一条消息通知您已经创建队列:define qlocaKmyreceiver. queue)I ! def ins qloeal (myr veti

11、ver, queus) 心皿口8: WebSphere BQ队列已创建。(6)通过输入以下命令来停止 MQSCendend I2 : end读取一个MQSC命令。所有命令均无语法错误口己处理所有的有效IQSC命令口 fcyfdxiv/d #|从MQS俵话退出回到shell中。(7)现在,我们已经定义了:名为to.queue.manager 的缺省队列管理器 名为 MYRECEIVER.QUEUE 队歹 U6.3测试本地安装的具体步骤下面开始测试MQ勺本地安装。要测试队列管理器和队列, 可以使用amqsput样本程序将消息放入队列,使用amqsget样本程序从队列取回消息。具体步骤如下:(1)请

12、先确保正确设置了 mq的环境变量,队列管理器处于正在运行的状态,并检查使用组mqm的用户登录到shell中。我们可以使用下列命令将消息放入此队列:amqsput MYRECEIVER.QUEUE 或者 amqsput MYRECEIVER.QUEUEto.queue.managerD: Oftin理4pm七 MVRECI UER_QUEUE io .queue .nana9ei 寻rtpl* AMI4&PUT0 queue is MYREGE1UER.QUEUE lie Lio, it s m* f irst MQ Message .SaimpLe AT1QSPUT0 end请注意,如果队列属

13、于缺省的队列管理器中,可以不用指定队列管理器。为避免出错,建议手工指在一行或多行中输入一些消息文本,后跟一行空白行,消息输入即可完成并结束。(2)在未放入消息之前,队列的深度curdepth应该是0的,现在放入了一条消息, 队列深度将会变为1命令查询出队列深度为 1的,为了验证这个想法,我们可以重回到MQSCH舌中,使用下述且是以MY开头的本地队列,果然 curdepth是为1,说明消息输入成功:di splay qlocal (my*) vhsre ( curdepth eq 1 ); di splay qlfjc4l where( curdepth eq 1 )AJIQ340&;显示队列掴

14、节9QUEUE (MYKECE工VER, QUEUETyPEtQLEAL)eUEDEPTE再输入完整的queue名字进行显示:diplay qlocal(myraceiver. queue): display qlocal (juyreceiver. queue) 州健8409;显示队列细节。QUEUE (MYRECEIVER. QUEUE)ACCTQ(QNGR)ALTTIME (17. C4. 50)BOTHRESH(0)CLUSIERC )CLKEANK(O)CKDATEC2010-03-36)CTtDEFTHtl)DEFPRIY(Q)DEFPRESP(SYKC)PEFSQFT(SHAKE

15、D)DESCR )GET(ENABLED)INITQ()mDEPTH(EOCO)加阳(QM)KO TRIGGEROPTROCS(D)FUT(ENABLED)QDEPMI(gO)QDPHIEV(DISABLED)RDF*EK(E班由LED)SVCINT (399599999)SCOPEQHGR)SUTQQMGR)TRIGDP TH(i)TRIGTYPE (FIRST)TYPE(QLOCAL) ALTDATE2010-03-aS) BOQNAME()CLtTSNLt ) CLWLPRTY(O)CmU3EQ 沁优GK) CRTDEtiT. 04.60) DEF0IND(OPEN) DEFPSIST(

16、NO) DEFREADA(MO) def type Predefined) DISTL(NO) 飒花瓯 IPPRCCS(0)JftkXHSCL D . anqsgfe t HV RECE1 H ER.QUEUE to _ queue _ meinageiSample AHQSGET3 与古色Ftne7sasre, if s 抑y First MQ Hes3agR,D2现在,我们已经成功地验证了本地安装。七、MQ勺服务器到服务器安装任务概述to.queue.manager 和其上的队列 MYRECEIVER.Q承接上文,我们已经创建好了接收方的队列管理器UEUE现在我们仍需要继续发送方的队列管理

17、器from.queue.manager和其上的远程队列、传输队列,发送方通道等,并需要回到接收方队列管理器中创建接收通道和Listener。我们将在同一部机器上完成这些操作,当然,如果你有条件,可以跨机器实践,并保证机器间的通信链路是畅通的。定义配置的具体步骤(1)作为mqm组中的用户登录到shell后,我们创建名为from.queue.manager的发送方队列管理器:crtmqm from.queue.managerf edVcygdr ive/d f c ftinqin fron. 4qujeiie. m.aJLger WebSpheia腌队列管理器已创建。创建成智捶f Ioti. qu

18、eue. iTiapsger的块有对象。缺省对象统计:61个已创魏立0个已替换伊0个已关歌”正在完成瞪置,设置完成唾faye0/cyE(irive/d 1(2)队列管理器创建完成后,我们将其启动:strmqm from.queue.managerf ayrygdrive/d.4总口乐 froifc. quetift. marLageEWebSphere HQ 队列管遵器 ton. lueue. anigerw 正在启动。在日志重放的段在队列管理器queue. Jtanager,5上访时了 5条日志记案完成队列管理器from, queue. 7nana.ger的日志重放中为队别管母器itqfjn

19、ytraiisnit. ;ueue)3 : dsf me qisMt* imys sndtr- qeue) in in* (myr 4civerb usue) iqnniins Ceu. jiuime ern) yjnit q (nyt r armil. qu*u* )布前岫VebSphere fflQ队利匕制疆.(5)远程队列定义完成后,我们可以使用如下命令查看其详细配置项信息:display qremote(mysender.queue)display Qremot e(nysend&r-quue)口 : display qiemote(myEender. queue) AMQ6409:显

20、示队列细节如旺亚(mYSENDE QUEUE)ALTDATE (2010-03-06)CLUSJ1L ()CLWLPRTNSDEPBIHD K0P 瓯)DEFPSISTCNO)DESCK()KQOANE (to. Queue, manager)SCOPE (QMGK)TYPE (QREK0n ALTTIME(18. 15.38) CLUSTER() CmRANK(O) DEFPRTY DEFPRESPCSYJICJ PUT(ENABLED) KNAME*:MmCSIER. QUEUE) XMITQyreceiver. lisi: sner) trptyps(t cp) port (1416)

21、control (qmgr)2 : def me list ener (myr eceiver. listener) trptype (lep) port (14 IS) ccriLtrol (qingt) AMQ8626: UebSphere 顺便听器己创建(8)接收方的Listener建立完成后,我们通过输入以下命令建立接收方通道:define channel(from.to.queue) chltype(rcvr) trptype(tcp)请注意,接收方通道的名字需要和发送方通道的名字定义为一样。define channel (inyfirst. channel) chltype(rcv

22、E) tretype (tcp) ri8 ; define thanrL&l (rnyfirst. chaimeD chllype (rcvrj trptTje (tcp) AMQ8014: WebSphere HQ 通道已创建。(9)好了,到现在为止,我们定义了以下对象:from.queue.manager 发送方队歹1J管理器MYSENDER.QUEUE 程队歹 UMYTRANSMIT.QUEU传输队歹 UFROM.TO.CHANNE发送方传输通道以及MYRECEIVER.LISTENEF收方 ListenerFROM.TO.CHANNEL收方传输通道至此,我们已经完成了服务器方式的安装配

23、置。下面我们即将开始测试。7.3测试服务器到服务器安装的具体步骤测试之前,需要启动发送方的通道和接收方的Listener。需要注意的是,发送方不需要Listener ,接收方的通道不需要手工启动,在发送方通道启动成功后,接收方通道会自动启动。(1)进入发送方的MQS会话,使用如下命令启动发送方通道:start channel(from.to.channel)start channel(myfirst. channel)1 : st art channel (rnyfLust. ciianneL) AMQS018;启动WebSphere总 通道已接受缶消息提示通道启动完成后,我们可以使用如下命令

24、查看通道的状态,如下图所示,发送方的状态status 是 running :display chstatus(from.to.channel)diplay rhstatur (jriyfirst, ciiannel)displ ay chat at us (nyf irst, channel) 显示通道状态细节口CHAML IWYFIK2T. CHA的正匚 COWUJJffiUST.O.0.1C141A)RQl/Si&E (t O. queue, ui皿a炉工) SUBSTATE (MQGET)CELrfFE(SDR)WENTSTATUS (R1INWING)XKITQ (JtYTK期珊工 T

25、. QUEUE)(2)进入接收方的 MQSCH舌,使用如下命令启动Listenerstart listener(myreceiver.listener)st art listener(myxec&iver, listener)10 : start 1istener(myrecciver. listener) AMQ8021 :己接受启动WebSphere旭位听母的请求心消息提示Listener启动完成后,我们可以使用如下命令查看Listener的状态,如下图所示,Listener 的状态 status 是 running :display lsstatus(myreceive匚listener

26、)1 : display lstatus (nyrec&iver- list ener)display Isst-xtus (myreceivei. listener)AMQ6631;显示侦听器状杰详纳信息STATUS CKTJIJiaMG) STARTDAC2010-03-D6)DE3CR)CONTROL (QSIGR)POETcurdepth 为 1:(5)消息输入完成后,我们可以回到 MQS像话中使用下述命令查询出传输队列当前深度display qlocil(myrac&iver.queu#)2 ; displav qlocal(myreceivert queue) AMQMQ9;显示队列细节#QUEUE (M7RECE工VER. QUEUE)ACCTQ (QMCR)ALTTIMEO7. 04- 50)BOTHRHSH(O)CLUSTER()CL /LTMTE (2010-03-06) E05W皿)CLUSML() CLWLPRTY(O) Cm US EQ

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论