首先介绍一下MQ MQ消息队列的简称是一种应用程序对应用程序的通信方法。说白了也就是通过队列的方式来对应用程序进行数据通信。而无需专用链接来链接它们。 MQ的通讯方式 1.数据报的方式 Datagram (Send and forget) 应用程序在创建完消息后。利用MQ的API将消息发送到队列中。它充分利用了MQ(once and once only ) 2.请求和应答方式 Request/Reply 发送消息之后需等待对方处理结果。 需考虑如下问题: a.等待应答的时间是多少? b.如果没有应答怎么办。 c.本次session是否需要保留? MQ的开发流程 1.让应用程序与队列管理器链接,通过MQconnect调用来进行此链接。 2.使用MQOpen调用为输出打开一个队列 3.应用程序使用MQPut调用将其数据放到队列上。 4.调用MQOpen调用打开输入队列 5.使用MQGet从队列上接收数据 # |( C& W6 k' B2 ]9 j/ N
安装步骤。(此处为转载文章,作者已经证实所有步骤。)
: V# m" I! r5 Y1 Q4 G0 L- RWindows下 WebSphere MQ / e3 X$ Q3 z9 c5 T- a1 F
服务端的安装: ( 1)把WebSphere MQ
0 Q" m: j+ m$ T& a( o* e1 B. \* cWindows版服务器CD-ROM插入CD-ROM驱动器。 ( 2)如果安装了自动运行,那么会启动安装进程。如果不启动,则双击CD-ROM上的根目录中的Setup图标以启动安装程序。 (3)请等待,直到出现"WebSphere MQ
0 x* Z7 F' ]4 U安装启动板"窗口为止。 (4)如果需要更改安装的本地语言,单击"选择语言"图标,然后从列表中选择所需的语言。 (5)选择必备软件选项。 选择典型安装后,安装界面上的每个安装项右边有一个对钩号(表示已安装),反之则为一个叉号(表示还没有安装,如果要装 MQ,则必须先把这些软件装好)。 如果出现了叉号: 1)单击项目左边的 "+"号以显示安装连接; 2)选择要使用的安装源的选项,从以下各项选择:
8 d# e% A6 s' x- H) d/ M - WebSphere MQ CD
- 因特网
- 网络/ N+ r5 `) i C3 v2 C6 T k# y
) V8 r) M: J* x+ k' B0 p& T7 h( 6)安装完成时,单击项目左边的"-"符号。
8 `/ G% |# Z1 A, {2 ?注意:对于定制安装,可能不需要所有的必备软件。 ( 7)安装完所有的必备软件,然后选择"网络先决条件"选项。 ( 8)选择"WebSphere
: ?# V* V/ H- q5 R* r- U3 O) i( zMQ"安装选项 (9)选择启动WebSphere + G$ M; m7 U% ?, j4 @. D
MQ安装程序,然后等待,直到显示了带有欢迎信息的"WebSphere MQ安装"窗口为止。 (10)单击"下一步"按钮继续。 (11)阅读面板上的信息和许可证条款,选择接受,然后单击"下一步"。 (12)如果机器上未安装过此产品的前一个版本,则显示"安装类型"面板。选择希望的安装类型(一般选择"典型"安装即可),然后单击"下一步"按钮。 (13)"WebSphere : V* y3 B1 f7 V2 |9 E
MQ安装"窗口显示"安装WebSphere MQ就绪"信息。该窗口还显示用户选中的安装摘要,单击"安装"开始正式安装。 ( 14)成功安装WebSphere
" W: R# F3 w3 s7 SMQ后,"WebSphere MQ安装"窗口显示以下信息:安装向导成功完成。 ( 15)单击"完成"按钮启动"准备WebSphere
! d4 k/ g7 ^7 Z$ m6 MMQ"向导。 安装图示
/ l1 k- h5 o1 j p9 O% I8 a- K: N$ a6 c4 w5 F
& Y3 k5 k: V/ m: L
8 k3 Q- S/ N1 x* W
$ F8 _8 k" K5 b8 M5 N H5 K
- O* j5 n7 t" Y8 n7 P

& Q, p+ C8 d) e) G6 t
5 v* c" Q* {5 X! [+ r# Z. @
: P$ H, ?0 h1 k7 q G. E
3 N0 O5 a6 {" T8 _8 ]7 B! n; ~- q+ w3 C2 E* `
9 J1 d4 g1 @3 i: e' g

v& _# }4 D( l. B8 w
3 W, B# S" w: [$ J6 O5 x
5 s1 Z9 I* q- [2 a
! p% ~; s& q- G- l
D4 o* Q- [: o; t
' X* N Q6 z5 Z* G1 B5 P. Z 9 \! q. h5 F0 z |% k1 p
* J o' ^' `* f1 Z
6 q+ P5 ?6 I+ j6 ?2 c L. y6 \
0 P- f8 ]( ~% L; g& o1 i. K / f' E) {' v. _1 ~) |5 z6 l
" x1 ], e" A) P8 W9 W
; j |# M/ }$ b F, E
: N9 E: M$ }7 Z2 P % m% e, M9 r' | p; `
% N! L, H+ x3 ^( ^# W: b8 N
% D$ u7 m" G9 O8 W1 O% q: e5 Y- }: X2 \: j1 u+ }6 F; q& q: S- z" [
9 P# q6 Q4 [2 X' `8 u7 @
* I1 n) `/ F: R) {
: M. }( R p6 o& t3 S
; }1 Q8 {: b4 b8 K : m* }% r) p& l0 G
/ x6 J: n% s' j x
, o |$ _) J. F# h( j+ ?( C! H, x3 ~% E" Z
应用分析8 R) K4 c4 f, b- x4 j6 E
5 F. W7 Q2 U* E: y) w% g
该章节主要内容包括MQ服务端的基本配置,如队列管理器,队列以及通道的建立,
! Z+ R! x) Q; ~, r- }, o且包含JAVA实现的客户端程序。由此构成一个完整的客户端-服务器的流程。
! w0 ]' z9 l- ^: B t# H8 M( V P! W( F% \* T- u
' E" p1 h5 P9 k4 I# T/ ~, H
服务端配置
- S# } d% F% A. o$ e# }1 D
7 H, B$ V1 G. C) j1)点 "开始"->"所有程序"->"IBM ) v6 h$ d/ G$ V% H$ H
WebSphere MQ"->"WebSphere MQ 资源管理器",进入WebSphere MQ + v6 S' u+ m0 h: G8 c5 c# l% {
资源管理器界面。如下图所示:
4 I/ l5 E( |- O+ L# H. ^6 F7 w+ t5 w$ V' f8 Z8 ?' y
图9
2 n- ?( L* N; T服务端配置 % |8 v/ P& m4 C
 # Y1 Q- F8 U* S& R! L
2)创建名为 "QM_JACK"的队列管理器
1 Y( t( P; K d' Z( Z: Q" ?<1>选中 "队列管理器"->"新建"->"队列管理器",如下图所示: : R! Z. }$ d# `* p: x
6 i$ G& \( a9 S) ^0 b
图10 创建名为"QM_JACK"的队列管理器 6 o8 v" v0 f2 Z- r

4 p3 W; q( ~0 b9 R: L h<2>在队列管理中输入 "QM_JACK",其他选项默认不变,点"下一步": 1 r1 l5 W/ c: Y) ^
( E8 u* ^0 x9 R- ~; c 图11 在队列管理中输入"QM_JACK"
3 n5 k8 _& }) C
0 g9 X+ _9 p5 B( y3 W<3>设置队列日志(本步骤采用系统默认设置),点 "下一步": . }7 n3 ?; C5 p+ {
6 y- g) r+ N6 z- d* ?* g% F 图12
4 _8 V9 U- z* A! @ R/ F5 U& O$ W+ D设置队列日志
: C3 m/ ^2 y i/ ` g7 }
2 b5 z/ }; \( e7 u! T# R<4>启动队列管理器,创建服务器连接通道,允许在 TCP/IP上进行队列管理器的远程管理,点击"下一步":
! e; o" H, w) a$ z% I+ @2 X" F8 Z; M3 I% G2 c
图13 创建服务器连接通道
1 \) A) G- v- V6 b) q J
- N: }% Z) m1 B/ R<5>设置队列管理器 QM_JACK的侦听端口:8927(用户可以根据需要自行更改端口号),点击"完成"。
* p4 ?5 u+ [& B, M1 E) d4 n( s% k8 y: N: J9 M) _# ^
图 14 ( |8 ^9 ]1 w1 i; g* i* _9 B
设置队列管理器QM_JACK的侦听端口
9 ]3 o9 W! _% Y
3 O( ?$ ^# S; F& `& g; B; y: Q<6>系统进入等待界面: ) o( x3 H; f8 Z
- X- C& e9 r2 t
图 15 9 k1 Y) }5 \/ Q- K: g
系统等待界面 ) X. z) O/ }$ a6 i

% w' d1 h& N8 [2 N4 Y" i& X2 L<7>队列管理器 QM_JACK创建成功 ) R: n+ M% V! H1 b$ g7 ]
: A; A1 h% \0 T 图 16 ' x. D0 G1 x* h e! w4 m8 g
系统队列管理器QM_JACK创建成功
* g9 ?! r: X! S |$ a' Y6 ?1 ~4 ~ " j- i& j. z' m8 d
3)在 QM_JACK下创建名为"QUEUE_RECV"和"QUEUE_REPLY"的本地队列(客户可以根据自己的需求随意更改本地队列的名字和数量,这里创建这两个本地队列只是为之后的MQ_Tuxedo项目作准备):
, l; h! @: S% h' L* ~$ |6 t* Q( Y8 X! g. r Y9 o
图17 定义本地队列
4 \5 y1 C+ Y! \& W: f8 G# B9 Z; B' V5 }$ s x

% i7 [8 A9 a- v1 ]1 j9 U
, c+ O$ j/ Z) G: b 图18 定义本地队列
3 B1 f2 u w+ _1 j, J 设置队列名后其他属性全为系统默认值,点击 "确定"。 4)在 QM_JACK下创建名为"CNN_JACK"的服务器通道。 . `3 t$ P! ^5 d+ D
图 19 ( D% {" O5 M% I) ^/ }
创建服务器连接通道 & r' [0 @ |1 o5 u9 Z
: d! {$ g' n+ O- o2 Y
( ^; t3 i3 @6 ^* s t& K" L
图20 创建服务器连接通道
. F( @. R& |: I9 y& m/ ^ 通道名称设为 CNN_JACK,其他选项保留为系统默认设置,点击"确定"。 5)在 MQ服务器端的计算机用户中添加MQ客户端所在计算机的系统用户。比如我的MQ客户端被Suse
2 M% J3 j& C/ Q" @) L! c4 o( M2 KLinux下的root用户使用,那么,我们就需要在MQ的服务端(也就是Windows
4 f9 n( x$ k# gxp系统中添加名为"root"的用户)所在的计算机系统中添加名为"root"的用户。具体步骤如下: <1>点击 "开始"->"控制面板"->"计算机管理"->"系统工具"->"本地用户和组"->"用户",点右键,选"新用户",如下图所示: 5 `3 i9 G" L' c" }7 p) ^) ?
图21
$ i2 |, j9 a% {- f创建系统用户
; y# \9 |' R# T2 O
# `: E3 G' G5 t9 b<2>创建新用户: root(注意:这里的用户名"root"是MQ客户端所在系统的用户名,用户要根据具体情况进行修改)
6 D X) h' M: X& q" w- S 图22 创建系统用户( o; X; P) b1 k# |, v! u

随意设置一个有效密码,选中密码永不过期,点击 "创建"。 <3>将新用户加入 mqm组(注意:这里的mqm组是我们安装完MQ 3 }+ u9 T: P3 d( d) _0 B9 e+ T
Server后系统自动创建的)。具体操作如下: H- `. e3 h7 n6 |: z: j
图23
2 s8 b$ U4 G& m _设置系统用户所在组 & \: w, \0 q( k/ X* K8 M' m. J
点击 "属性":
3 h+ u) R! u+ v, d) I7 M 图24 设置系统用户所在组
) |, R& E# n6 V* l1 ?! m 点击 "添加": / s/ }. z0 a5 K( j2 D. o
图25
7 E' L+ E! m" Y4 S- j设置系统用户所在组$ B1 X9 n8 ?& M6 p
 输入对象名称: mqm,点击"确定":
0 o$ E" h9 @4 _" R m' x) r 图26 设置系统用户所在组
( Q2 B4 v/ H: @; d! a root用户被添入 mqm组中: ' D2 m2 g1 u! i' W# r6 d& _' p/ |' i
图27 设置系统用户所在组
, T1 J7 W+ d) u1 }1 @9 }8 P / c5 @/ y# |! y
点击 "应用",点击"确定"。 重启机器。至此, MQ服务端的配置完成。 " B1 Z) r! S/ g# m+ O: @( R, c/ d
|