|
首先介绍一下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从队列上接收数据
/ _3 C. H. |% I安装步骤。(此处为转载文章,作者已经证实所有步骤。) $ @4 S' C9 P4 K! f4 P. O u) U
Windows下 WebSphere MQ
4 V5 s8 W+ `' N: T( X8 X服务端的安装: ( 1)把WebSphere MQ 0 i: l5 ^( t) k* C
Windows版服务器CD-ROM插入CD-ROM驱动器。 ( 2)如果安装了自动运行,那么会启动安装进程。如果不启动,则双击CD-ROM上的根目录中的Setup图标以启动安装程序。 (3)请等待,直到出现"WebSphere MQ
" b( t, i+ e) \# d安装启动板"窗口为止。 (4)如果需要更改安装的本地语言,单击"选择语言"图标,然后从列表中选择所需的语言。 (5)选择必备软件选项。 选择典型安装后,安装界面上的每个安装项右边有一个对钩号(表示已安装),反之则为一个叉号(表示还没有安装,如果要装 MQ,则必须先把这些软件装好)。 如果出现了叉号: 1)单击项目左边的 "+"号以显示安装连接; 2)选择要使用的安装源的选项,从以下各项选择: ) J" T* _* |+ F! R+ k
- WebSphere MQ CD
- 因特网
- 网络) D8 n* ^( j: x% V
5 o" y5 V( X% ?3 N f( 6)安装完成时,单击项目左边的"-"符号。
; S L _9 n6 W4 k9 S) Z注意:对于定制安装,可能不需要所有的必备软件。 ( 7)安装完所有的必备软件,然后选择"网络先决条件"选项。 ( 8)选择"WebSphere
9 I- M4 G& j* zMQ"安装选项 (9)选择启动WebSphere
* e+ y/ h0 u `% [; R9 M, J6 QMQ安装程序,然后等待,直到显示了带有欢迎信息的"WebSphere MQ安装"窗口为止。 (10)单击"下一步"按钮继续。 (11)阅读面板上的信息和许可证条款,选择接受,然后单击"下一步"。 (12)如果机器上未安装过此产品的前一个版本,则显示"安装类型"面板。选择希望的安装类型(一般选择"典型"安装即可),然后单击"下一步"按钮。 (13)"WebSphere 8 Y' k" [& @/ \
MQ安装"窗口显示"安装WebSphere MQ就绪"信息。该窗口还显示用户选中的安装摘要,单击"安装"开始正式安装。 ( 14)成功安装WebSphere . F; z4 l' y1 f
MQ后,"WebSphere MQ安装"窗口显示以下信息:安装向导成功完成。 ( 15)单击"完成"按钮启动"准备WebSphere 6 X* g! V0 L& E! n2 t
MQ"向导。 安装图示
0 r; y( b' M, y( d* S8 b. V5 _2 H2 @; a5 d' |" o7 P
1 ]9 J @' x' q2 A- G. V6 _4 Z
% E8 m( a. N! O. @6 K5 V

3 W) N0 U' a9 i7 b2 p; n
h8 o4 e6 ]6 m2 }3 v
9 W3 z2 q) o0 E2 g8 l; D9 i# f2 p9 @2 }8 T# D

: x) i8 d! a- ^5 `9 c! z
v" m, ?! ]7 A0 Z; j+ R0 P
3 t' G, d8 i& @+ x0 V7 k; a- x v# O& i% F! p# \6 M

, A% t+ N: s! T9 R& s% C- x0 i3 M. E" D; O5 A. K6 T/ I; Q7 i

" ]1 f6 e# G6 t4 Z b2 O K$ }" l( a- r; W- d8 g! f& f

; ~ V# u D2 V- A
. U2 }. x. i/ R# q ) _& A. G3 K, r6 R
, w! m) A, h f: T/ P& f ' _ y, T1 L# d& ]6 ^
8 M4 `) w8 J! Z0 j B + N5 c7 l M4 r3 g0 P8 M
) y( l" L! ]* u( F! B - C- Q& a6 z% |/ k! @7 M
: U) U, @4 f# ^$ X8 s( Q3 c ! t" Q6 d- B/ \
# P7 T5 k% r2 i5 ]+ }# s

8 T: ]$ U$ L! g4 r' n t& {" q8 [$ E* I7 E, ~
* x3 m! f; Y9 g. \' P
' X {. [" l& x0 \# c0 N- M
& O5 p7 ?6 f' L8 _
! Z1 w% L0 J/ v) A0 J; k. q4 {
$ |$ S9 F4 K# l4 {/ x. X( e7 i7 Z$ v3 k, |% b7 ]3 s
0 ~ T, |. D, [' m, r
! K6 D1 e G: J) u
应用分析6 X; C% K0 H' D% A4 b1 t
' V) p' C8 n/ h4 P1 p* [3 G该章节主要内容包括MQ服务端的基本配置,如队列管理器,队列以及通道的建立,
; F9 B) m1 c& G( D& v2 h且包含JAVA实现的客户端程序。由此构成一个完整的客户端-服务器的流程。$ W: k" U5 L( }% q0 w
3 D! q- w* q0 d% s- _: Z) J3 D
/ G/ F/ n# i% K- A9 S3 p/ [' ]服务端配置7 K- a& \# b) P: }& @. _
. R& t& j5 P: N- V" J) ~
1)点 "开始"->"所有程序"->"IBM 9 z3 o# S1 j$ `
WebSphere MQ"->"WebSphere MQ 资源管理器",进入WebSphere MQ
4 [6 P* s( h+ @- m% S$ w1 t资源管理器界面。如下图所示: 5 \5 v$ V+ o1 U8 A* ^8 l8 h, b
. R( ^1 }+ Q4 r. d- N' l% Q 图9
! B- t4 {/ g% }5 B" F9 |! G6 \服务端配置 - S3 S+ C+ [+ w1 V
 & N0 a. @) w' i0 \8 O
2)创建名为 "QM_JACK"的队列管理器
' R0 T( Q G$ g# B9 L7 i" H<1>选中 "队列管理器"->"新建"->"队列管理器",如下图所示: ' q6 `9 j- j% U$ R9 \4 J6 k. C
; E3 H: J( D! l& y6 a0 E) K# ` 图10 创建名为"QM_JACK"的队列管理器 % {; L3 v0 r: m" @$ J) M. H
 . j; L- E, w( x: p. W
<2>在队列管理中输入 "QM_JACK",其他选项默认不变,点"下一步": 7 E: ~4 I2 ]5 v# `2 D7 X0 Y8 a
V4 w+ Z1 b2 V2 V% R1 _ 图11 在队列管理中输入"QM_JACK"
9 u% E, g: z) A) l" ]4 } 7 C3 a& k% h6 K, E& m2 L1 U; r& k
<3>设置队列日志(本步骤采用系统默认设置),点 "下一步":
) \; [9 x. A0 s- N4 V
% D7 o6 H" X' \- X 图12 ! H7 g, D, v9 g$ P+ x% y
设置队列日志 & l7 W" B& Q8 O/ u
 ! L# i e! o: @; m* \& @% Q
<4>启动队列管理器,创建服务器连接通道,允许在 TCP/IP上进行队列管理器的远程管理,点击"下一步": + c8 k! s2 ^& s" D
, d+ a+ V* r; P7 F, f
图13 创建服务器连接通道
4 g: Q- N* P4 p5 ?5 l
" r4 {& h9 L" r1 \, a# o+ p% y<5>设置队列管理器 QM_JACK的侦听端口:8927(用户可以根据需要自行更改端口号),点击"完成"。
1 v+ I7 t6 K0 ^% Y
+ p5 {# J; b W2 }' T 图 14
+ l6 q0 [ U* Y" z' N% Y设置队列管理器QM_JACK的侦听端口
& A. `2 I6 _, w& N# z ' d. i! n( v4 H1 ]1 e8 E! Y
<6>系统进入等待界面:
! e9 b+ r) k* S; [; i0 E- h2 m7 c: Y: X% D+ C. W
图 15 8 R9 H4 |0 _/ h" Q7 \
系统等待界面 & s7 n5 L" d0 Z" |2 m! P5 @: z

2 l& _; c" w. M5 S, b: G8 a; }<7>队列管理器 QM_JACK创建成功
! J- y( @' ?, A0 ]( ^$ }
; K8 b( S; f8 `% m6 Q# D" Z# ~ 图 16 + U, P9 g; Q7 ]3 g
系统队列管理器QM_JACK创建成功
- `* D7 L' {: Q, \. i( ]+ \
3 c( f4 s2 X2 X$ Z. _" S& D3)在 QM_JACK下创建名为"QUEUE_RECV"和"QUEUE_REPLY"的本地队列(客户可以根据自己的需求随意更改本地队列的名字和数量,这里创建这两个本地队列只是为之后的MQ_Tuxedo项目作准备): * f- q) X1 N c$ h3 d* c; c( E
& Q D; K9 d( _7 u
图17 定义本地队列 , A0 [$ @& w$ c N
& Q* c2 m" f1 x

6 z8 p: F8 ? P7 k0 }5 Z, s% \+ F+ w4 ^, c
图18 定义本地队列
- { Y' k* V# E* e( r0 s 设置队列名后其他属性全为系统默认值,点击 "确定"。 4)在 QM_JACK下创建名为"CNN_JACK"的服务器通道。
! T7 a1 M' v l; b* F( j" [ 图 19
$ ]: w! u+ O, t2 i创建服务器连接通道 1 w- t8 O% k9 `" C/ u5 [
- ?# n" V7 s" ^% |: k, F7 r
. q( `# b8 e2 v% r c4 h 图20 创建服务器连接通道
n, x$ _7 z b( T& |5 j% P) f$ Y; B 通道名称设为 CNN_JACK,其他选项保留为系统默认设置,点击"确定"。 5)在 MQ服务器端的计算机用户中添加MQ客户端所在计算机的系统用户。比如我的MQ客户端被Suse
% e {& ?, Z1 v) w. k- yLinux下的root用户使用,那么,我们就需要在MQ的服务端(也就是Windows 6 P' H, d" Z6 W' s
xp系统中添加名为"root"的用户)所在的计算机系统中添加名为"root"的用户。具体步骤如下: <1>点击 "开始"->"控制面板"->"计算机管理"->"系统工具"->"本地用户和组"->"用户",点右键,选"新用户",如下图所示:
7 z2 S. _. ~7 t! J) j7 J' ~ 图21
# r% m$ K7 T8 g& p$ W2 X创建系统用户 % ]# A% q2 i. }7 O* E
 1 f( {! r% v9 a& N$ C) L& a2 f5 w
<2>创建新用户: root(注意:这里的用户名"root"是MQ客户端所在系统的用户名,用户要根据具体情况进行修改)
$ T P7 E' b x0 \$ h 图22 创建系统用户
7 v' ?% x$ N' }( W2 C0 I& r
随意设置一个有效密码,选中密码永不过期,点击 "创建"。 <3>将新用户加入 mqm组(注意:这里的mqm组是我们安装完MQ
z( l* c8 H+ _$ W4 YServer后系统自动创建的)。具体操作如下:
+ V0 x' X% I' K- Z. Y1 e7 ~ 图23
. g1 S% B4 e, i设置系统用户所在组 6 Q0 D" V( q: H5 l3 K
点击 "属性":
; a# v' V7 h4 W P$ [$ c/ `* J 图24 设置系统用户所在组 , o7 w0 B+ }5 J; Q( j$ K: q
 点击 "添加":
* B$ x6 D( A8 y 图25
: b9 }2 w; T6 _. D, Y1 [$ f设置系统用户所在组: S& p7 I' M+ [, M7 R& B

输入对象名称: mqm,点击"确定":
- _0 n7 t/ K( w0 c" q 图26 设置系统用户所在组
; N+ H" ^8 q' J' @; Q2 \ root用户被添入 mqm组中: ) d! C. [6 s( @4 P
图27 设置系统用户所在组* ?7 }4 k8 \" L0 O
 * D" z0 Y1 p# B2 n* C7 d$ z
点击 "应用",点击"确定"。 重启机器。至此, MQ服务端的配置完成。 " ~. y5 G, |& B! r Y
|