`
ahzzhen2
  • 浏览: 19403 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

IBM MQ 使用指南

    博客分类:
  • Java
 
阅读更多
随着计算机网络和分布式应用的不断发展,远程消息传递越来越成为应用系统中不可缺少的组成部分。
商业消息中间件的出现保证了消息传输的可靠性,高效率和安全性,同时也减少了系统的开发周期。
目前应用最多的消息中间件产品为IBM MQSeries。
东风生管系统就是通过MQ 通讯的。
本文就针对MQ的基本操作与配置进行详细的阐述,希望对读者有所帮助。
一.MQ基本操作
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 
如果是默认队列管理器,可以不带其名字
往队列中放消息 
amqsput QName QmgrName 
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
从队列中取出消息 
amqsget QName QmgrName 
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
启动通道 
runmqchl –c ChlName –m QmgrName
启动侦听 
runmqlsr –t TYPE –p PORT –m QMgrName
停止侦听 
endmqlsr -m QmgrName
MQSeries命令
定义死信队列 
DEFINE QLOCAL(QNAME) DEFPSIST(YES) REPLACE
设定队列管理器的死信队列 
ALTER QMGR DEADQ(QNAME)
定义本地队列 
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 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 PUT 
DISPLAY 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)

<!-- -->

 

1.在<MQ_HOME>\bin (<MQ_HOME>指的是 Embeded JMS 的安装目录)目录下执行命令(查找队列管理器名):

<MQ_HOME>\bin > dspmq
QMNAME(WAS_washyf_server1) STATUS(正在运行)

其中的
WAS_washyf_server1 就是您的队列管理器名称

2.在<MQ_HOME>\bin目录下执行命令(启动MQ脚本语言环境):

<MQ_HOME>\bin >runmqsc WAS_washyf_server1

3.打开管理控制台 > 应用程序服务器 > <server_name> > 服务器组件 > JMS 服务器,找到您要监控的队列名,在本例中为:TestJMSQueue1,所以嵌入式JMS中真正应用的队列名应该为 WQ_TestJMSQueue1。(其中<server_name>是指 JMS队列 所在的应用服务器名)

4.切换到前面的命令行窗口下,运行如下的命令:
dis ql(*)
从列出的全部队列名中验证WQ_TestJMSQueue1的存在

5.在命令行窗口下输入:
dis ql('WQ_TestJMSQueue1')
会有如下的输出:

dis ql('WQ_TestJMSQueue1')
3 : dis ql('WQ_TestJMSQueue1')
AMQ8409: 显示队列细节。
DESCR(WebSphere Application Server queue - do not delete)
PROCESS( ) BOQNAME(SYSTEM.DEAD.LETTER.QUEUE)
INITQ( ) TRIGDATA( )
CLUSTER( ) CLUSNL( )
QUEUE(WQ_TestJMSQueue1) CRDATE(2003-10-23)
CRTIME(17.11.39) ALTDATE(2003-10-23)
ALTTIME(17.11.39) GET(ENABLED)
PUT(ENABLED) DEFPRTY(0)
DEFPSIST(NO) MAXDEPTH(640000)
MAXMSGL(4194304) BOTHRESH(5)
SHARE DEFSOPT(SHARED)
HARDENBO MSGDLVSQ(PRIORITY)
RETINTVL(999999999) USAGE(NORMAL)
NOTRIGGER TRIGTYPE(FIRST)
TRIGDPTH(1) TRIGMPRI(0)
QDEPTHHI(80) QDEPTHLO(20)
QDPMAXEV(ENABLED) QDPHIEV(DISABLED)
QDPLOEV(DISABLED) QSVCINT(999999999)
QSVCIEV(NONE) DISTL(NO)
DEFTYPE(PREDEFINED) TYPE(QLOCAL)
SCOPE(QMGR) DEFBIND(OPEN)
IPPROCS(1) OPPROCS(0)
CURDEPTH(0)

请注意CURDEPTH(0)这里的数字就是当前您队列里面的消息数,IPPROCS(1)表示有应用正在监控这
个队列

6.如果,有应用正在监控这个队列把使用这个队列的应用停止。

7.在命令行窗口下输入:

clear ql('WQ_TestJMSQueue1')
8 : clear ql('WQ_TestJMSQueue1')
AMQ8022: WebSphere MQ 队列已清除。

8.退出命令行使用 end 命令。

查看queue的message的内容
第一种方式:使用/opt/mqm/samp/bin/amqsget 队列 的名称 和 队列管理器
第二种方式:使用/opt/mqm/samp/bin/amqsbcg

分享到:
评论

相关推荐

    IBM MQ使用指南

    ### IBM MQ 使用指南 IBM MQ 是一款非常成熟且广泛使用的消息中间件,它为企业级应用提供了可靠的、安全的信息传输机制。本文将详细介绍 IBM MQ 的基本概念、安装配置流程以及一些实用的操作命令,并通过示例代码...

    IBM_MQ_使用指南

    ### IBM MQ 使用指南详解 IBM MQ,原名为IBM MQ Series,是IBM公司开发的一款高性能、高可靠性的消息中间件,广泛应用于企业级分布式系统中,用于处理和管理应用程序之间的消息传递。随着计算机网络和分布式应用的...

    IBM MQ Explore windows下安装包

    除了基本的使用,IBM MQ Explorer还支持以下高级功能: - 图形化配置:通过直观的图形界面,可以方便地配置MQ服务器的复杂设置。 - 监控与报警:可以设置阈值和规则,当达到特定条件时,MQ Explorer将发出警告或...

    IBM MQ命令使用指南

    IBM MQ中间件命令使用指南,使用于初学者学习使用的资料手册

    mq.rar_MQ_ibm mq 实例代码_ibm mq 文件传输_ibm mqput怎么用_put

    本文将深入解析MQ的使用,特别是IBM MQ的实例代码、文件传输以及`mqput`命令的使用方法。 在IBM MQ中,`mqput`是一个命令行工具,用于将消息放入队列中。它适用于不同的操作系统平台,并且可以方便地集成到脚本或...

    IBM MQ应用编程指南

    《IBM MQ应用编程指南》是一本面向开发人员的详尽参考资料,旨在帮助读者掌握如何使用各种编程语言与IBM MQ进行交互,实现高效、稳定的消息传递。IBM MQ是业界广泛采用的企业级消息中间件,它提供了可靠的异步通信...

    IBM MQ编程模式中文版

    "IBM MQ编程模式中文版"是一份面向Java开发者的指南,旨在帮助他们理解和掌握如何利用MQSeries classes for Java进行有效的消息队列编程。 在IBM MQ的Java编程中,有几个核心概念和关键知识点: 1. **Message ...

    c# 操作ibm mq 手册

    #### 部分内容概述:IBM WebSphereMQ .NET类使用指南 - **版本信息**:文档针对的是IBM WebSphereMQ .NET类的5.3版本及其后续版本。这表明手册中的内容可能包含对5.3版之后的更新和支持,但具体的变更细节会在新...

    IBM MQ 9 RedHat7安装说明

    ### IBM MQ 9 在 Red Hat 7 的安装与配置指南 #### 一、安装前的准备工作 ##### 1.1 安装 JDK 为了确保 IBM MQ 的顺利运行,首先需要安装 Java Development Kit (JDK)。以下是安装 JDK 的步骤: 1. **下载并安装...

    IBM MQ for .net开发文档

    《IBM MQ for .net开发文档》是一份详尽的技术指南,旨在帮助开发者了解如何在Microsoft .NET环境中利用IBM MQ进行消息传递。这份文档由多位IBM技术专家共同编写,包括Saida Davies、Michael Hamann、Sachin ...

    db2架包 IBM MQ

    IBM MQ(原名WebSphere MQ)则是IBM提供的一款消息中间件,它允许应用程序在不同的网络协议、操作系统和硬件平台上进行可靠的消息通信。这两个产品结合,可以构建高效、安全且可扩展的企业级数据处理和消息传输解决...

    IBM MQ管理手册

    IBM MQ 管理手册 IBM MQ 管理手册是 IBM MQ 管理员必备的操作手册,提供了 IBM MQ 常用命令的详细解释和...IBM MQ 管理手册提供了队列管理器和队列的基本操作命令和参数说明,为 IBM MQ 管理员提供了详细的操作指南。

    技术资料MQHA,IBM MQ集群

    【IBM MQ集群与MQ High Availability(MQ HA)】 IBM MQ,前身为WebSphere MQ,是IBM提供的一款消息中间件,用于在不同的应用之间传递数据,确保数据的安全、可靠传输。在大型分布式系统中,为了保证服务的连续性和...

    IBM MQ API以及其他的资料

    `WebSphere MQ Application Programming Reference.pdf`文档是IBM官方提供的详细编程指南,包含了关于MQ API的所有细节,包括函数说明、参数解释、错误代码等。对于深入理解和使用IBM MQ API的开发者来说,这是一个...

    IBM.MQ.pdf

    根据给定的文件信息,我们可以提炼出关于IBM.MQ(WebSphere MQ)的关键知识点,尤其聚焦于使用组件对象模型(Component Object Model, COM)接口的相关内容。以下是对这些知识点的详细解析: ### IBM.MQ(WebSphere...

Global site tag (gtag.js) - Google Analytics