IBM MQ入门

IBM MQ入门
IBM MQ入门

IBM WMQ

1.技术介绍

1.1. 总体介绍

消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。

IBM WebSphere MQ 产品支持应用程序通过不同组件如处理器、子系统、操作系统以及通信协议的网络彼此进行通信。例如,IBM WebSphere MQ 支持35 种以上的不同操作系统。IBM WebSphere MQ 支持两种不同的应用程序编程接口:

Java 消息服务(JMS)和消息队列接口(MQI)。

在IBM WebSphere MQ 服务器上,JMS 绑定方式被映射到MQI。如图所示,应用程序直接与其本地队列管理器通过使用MQI 进行对话,MQI 是一组要求队列管理器提供服务的调用。MQI 的引人之处是它只提供13 次调用。这意味着对于应用程序编程员它是一种非常易于使用的接口,因为大部分艰苦工作都将透明完成的。

1.2. 术语定义

2.安装

2.1. 下载

最新版本:7.0.1.3

有多个版本:linux_32,linux_64,linux_win

2.2. 硬件环境

2.3. 安装

上传文件到相关目录,

1.解压文件

CZJ3YML.tar.gz

3.安装

安装后会自动创建系统用户及用户组:mqm 程序安装目录:/opt/mqm

数据相关目录:/var/mqm

Java相关jar包:/opt/mqm/java/lib

4.更改mqm用户密码

后续操作用mqm用户操作

2.4. 卸载

1.用root帐号登录系统

2.停止所有队列管理器

//查看正在运行的队列管理器

dspmq

//停止所有跟队列管理器相关的监听程序,注意:QueueManagerName是队列队列管理器名称,具体名称用命令dspmq查询

endmqlsr -m QueueManagerNam e

//停止所有正在运行的队列管理器

endmqm QueueManagerName

3. //确认所有跟MQ有关的进程都已经停止

ps -ef | grep mq

4.//查看安装了那些相关的包

rpm -q -a | grep MQSeries

//一次性删除所有安装的包,以下命令只是一个示例,命令后面的包名称是命令“rpm -q -a | grep MQSeries” //查询所得的所有包名称,包名之间用空格分隔,

rpm -ev MQSeriesRuntime-6.0.0-0 MQSeriesServer-6.0.0-0 MQSeriesServer-6.0.0-0

5.删除用户

userdel mqm

6.删除文件

rm -rf /opt/mqm/

rm -rf /var/mqm/

7.重启主机

2.5. 重新启动MQ

1、切换到mqm用户

2、启动队列管理器

3、启动服务

启动命令服务器:非必须

启动侦听器:

验证队列管理器和侦听器在两台计算机上运行,然后启动通道:

3.配置

配置过程包括以下几个步骤:

1.创建队列管理器。

2.启动队列管理器。

3.创建队列和通道:可以命令方式,也可文件方式。

4.启动命令服务器、侦听器和通道。

3.1. 简单配置

2.启动队列管理器

3.创建队列和通道

进入队列处理器

创建通道

HW_ALARM.Q

创建队列SJ_ALARM.Q

CS_ALARM.Q

4.启动服务

启动命令服务器:非必须

启动侦听器:

验证队列管理器和侦听器在两台计算机上运行,然后启动通道:

3.2. 接收端

5.创建队列管理器

7.创建队列和通道

编辑如下文件WMQ1QM.conf:

执行命令:

WMQ1QM:为队列管理器名字,< WMQ1QM.conf 为命令,> qcreate.log 为输出结果

8.启动服务

启动命令服务器:非必须

启动侦听器:

验证队列管理器和侦听器在两台计算机上运行,然后启动通道:

3.3. 发送端

3.创建队列和通道

编辑如下文件WMQ2QM.conf:

执行命令:

WMQ2QM:为队列管理器名字,< WMQ2QM.conf 为命令,> qcreate.log 为输出结果

4.启动服务

需要启动命令服务器:必必须

需要启动侦听器

验证队列管理器和侦听器在两台计算机上运行,然后启动通道:

4.JA V A-MQI开发

用于将消息放入队列中(MQSend) 和从队列获取消息(MQGet) 的示例Java 应用程序可使用前面部分中定义的队列。这些应用程序支持String 消息,旨在用于测试和作为说明如何从Java 应用程序使用WebSphere MQ 的示例。可以从脚本使用应用程序,包括各种类型的应用程序。MQSend 和MQGet 都从MQConnector 类进行扩展,该类可提供WebSphere MQ 连接、初始化WebSphere MQ、打开和关闭队列,向队列发送消息及从队列接收消息。

4.1. 配置文件

需要加载相关类,目录:/opt/mqm/java/lib

环境变量:/etc/profile

4.2. M QConnector

MQConnector 是用于进行发送和获取操作的超类。该类处理打开连接和发送及获取消息的工作。将使用属性文件对其进行配置,需要在属性文件中指定主机地址、队列管理器名称和队列名称:

代码

4.3. M QSend

向队列发送消息的命令行程序

代码

发送脚本put

4.4. M QGet

从指定的队列检索消息配置文件

代码

发送脚本get

4.5. 测试

5.C++开发5.1. 配置文件

相关主题
相关文档
最新文档