WebsphereMQ-命令配置与C#编程.doc_第1页
WebsphereMQ-命令配置与C#编程.doc_第2页
WebsphereMQ-命令配置与C#编程.doc_第3页
WebsphereMQ-命令配置与C#编程.doc_第4页
WebsphereMQ-命令配置与C#编程.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

系统实施计划WebsphereMQ6.0-配置与C#编程(刘杰峰,20120111)WebsphereMQ6.0-配置与C#编程11、常用命令12、MQSeries命令23、配置要求44、QM1和QM2的配置44.1、配置过程44.2、配置后的结果54.3、测试验证55、C#代码61、 常用命令MQ中有几个很重要的组件:队列管理器(QueueManager)、队列(Queue)和通道(Channel)。介绍其基本的操作方法。创建队列管理器crtmqm q QMgrName-q是指创建缺省的队列管理器删除队列管理器dltmqm QmgrName启动队列管理器strmqm QmgrName如果是启动默认的队列管理器,可以不带其名字停止队列管理器endmqm QmgrName 受控停止endmqm i QmgrName 立即停止endmqm p QmgrName 强制停止显示队列管理器dspmq m QmgrName运行MQSeries命令runmqsc QmgrName如果是默认队列管理器,可以不带其名字,其命令很多,常用的参考MQSeries命令。往队列中放消息amqsput QName QmgrName如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字从队列中取出消息amqsget QName QmgrName如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字启动通道runmqchl c ChlName m QmgrName启动侦听runmqlsr t TYPE p PORT m QMgrName停止侦听endmqlsr -m QmgrName2、 MQSeries命令退出END定义本地队列DEFINE QL(QNAME) REPLACE定义别名队列DEFINE QALIAS(QALIASNAME) TARGQ(QNAME)远程队列定义DEFINE QREMOTE(QRNAME)RNAME(AAA) RQMNAME(QMGRNAME)XMITQ(QTNAME)定义模型队列DEFINE QMODEL(QNAME) DEFTYPE(TEMPDYN)定义本地传输队列DEFINE QLOCAL(QTNAME) USAGE(XMITQ) DEFPSIST(YES) +INITQ(SYSTEM.CHANNEL.INITQ)+PROCESS(PROCESSNAME) REPLACE定义死信队列DEFINE QLOCAL(QNAME) DEFPSIST(YES) REPLACE设定队列管理器的死信队列ALTER QMGR DEADQ(QNAME)创建进程定义DEFINE PROCESS(PRONAME) +DESCR(STRING)+APPLTYPE(WINDOWSNT)+APPLICID( runmqchl -c SDR_TEST -m QM_ TEST)其中APPLTYPE的值可以是:CICS、UNIX、WINDOWS、WINDOWSNT等创建发送方通道DEFINE CHANNEL(SDRNAME) CHLTYPE(SDR)+CONNAME(100.100.100.215(1418)) XMITQ(QTNAME) REPLACE其中CHLTYPE可以是:SDR、SVR、RCVR、RQSTR、CLNTCONN、SVRCONN、CLUSSDR和CLUSRCVR。创建接收方通道DEFINE CHANNEL(SDR_ TEST) CHLTYPE(RCVR) REPLACE创建服务器连接通道DEFINE CHANNEL(SVRCONNNAME) CHLTYPE(SVRCONN) REPLACE显示队列的所有属性DISPLAY QUEUE(QNAME) ALL显示队列的所选属性DISPLAY QUEUE(QNAME) DESCR GET PUTDISPLAY QUEUE(QNAME)MAXDEPTH CURDEPTH显示队列管理器的所有属性DISPLAY QMGR ALL显示进程定义DISPLAY PROCESS(PRONAME)更改属性ALTER QMGR DESCR(NEW DESCRIPTION)ALTER QLOCAL(QNAME) PUT(DISABLED)ALTER QALIAS(QNAME) TARGQ(TARGQNAME)删除队列DELETE QLOCAL(QNAME)DELETE QREMOTE(QRNAME)清除队列中的所有消息CLEAR QLOCAL(QNAME)3、 配置要求配置最常用的模式:Sender-Receiver,队列管理器QM1上的消息向队列管理器QM2上发送,可以任务QM在机器1上,QM2在机器2上,物理上可以是一台机器,本例演示环境也是一台机器。在实际的应用系统中,消息不仅要发,还要接收,这时进行以下的双向配置即可。为简单起见,只讲解QM1-QM2发送消息。4、 QM1和QM2的配置4.1、 配置过程说明:本脚本用例测试模式:Sender - Receiverc:表示命令行,:表示MQ命令行建立两个队列管理器。QM1-c:crtmqm QM1c:strmqm QM1c:runmqsc QM1:DEFINE QLOCAL(QX) USAGE(XMITQ) REPLACE:DEFINE QREMOTE(QR) RNAME(QL) RQMNAME(QM2) XMITQ(QX) REPLACE:DEFINE CHANNEL(C) CHLTYPE(SDR) TRPTYPE(TCP) CONNAME(127.0.0.1(1416) XMITQ(QX) REPLACE:endQM2-c:crtmqm QM2c:strmqm QM2c:runmqsc QM2:DEFINE LISTENER(LSR) TRPTYPE(TCP) PORT(1416) CONTROL(QMGR):DEFINE QLOCAL(QL) REPLACE:DEFINE CHANNEL(C) CHLTYPE(RCVR) TRPTYPE(TCP) REPLACE:START CHANNEL(C):end-c:start runmqlsr -m QM2 -t tcp -p 1416c:runmqsc QM1:start channel (C):end4.2、 配置后的结果4.3、 测试验证c:amqsput QR QM1你好!MQ5、 C#代码需要使用的dll包是amqmdnet.dll,位于MQ安装目录下的bin目录。using System;using System.Collections;using System.Text;using System.Windows.Forms;using IBM.WMQ;namespace CzzfLiuText public partial class TestMQ : Form public TestMQ() InitializeComponent(); private void button1_Click(object sender, EventArgs e) /* 方式一 MQQueueManager qMgr = new MQQueueManager(QM1); MQQueue queue = qMgr.AccessQueue(QR, MQC.MQOO_OUTPUT); MQMessage message = new MQMessage(); message.WriteString(你好,现在是 + DateTime.Now.ToString(yyyy-MM-dd HH:mm:ss); queue.Put(message);*/ /* 方式二*/ MQQueueManager qMgr = new MQQueueManager(QM1); MQQueue queue = qMgr.AccessQueue(QR, MQC.MQOO_OUTPUT); MQMessage message = new MQMessage(); message.WriteUTF(你好,现在是 + DateTime.Now.ToString(yyyy-MM-dd HH:mm:ss);/ queue.Put(message); queue.Close(); qMgr.Close(); MessageBox.Show(发送完成); private void button2_Click(object sender, EventArgs e) /* 方式一 MQQueueManager qMgr = new MQQueueManager(QM2); MQQueue queue = qMgr.AccessQueue(QL, MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_FAIL_IF_QUIESCING); MQMessage message = new MQMessage(); queue.Get(message); MessageBox.Show(message.ReadString(10000); */ /* 方式二*/ MQQueueManager qMgr = new MQQueueManager(QM2); MQQueue queue = qMgr.AccessQueue(QL, MQC.MQOO_INPUT_AS_Q_DEF | MQC.MQOO_OUTPUT); MQMessage message = new MQMessage(); MQGetMessageOptions gmo = new MQGetMessageOptions(); g

温馨提示

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

评论

0/150

提交评论