- mq 主要对象基本概念简介
1:消息:就是一段包含业务信息的数据;如一段字符串。
2:队列:就是一个临时保存消息的缓存。通常情况下按先进先出的规则保存。
3:队列管理器:管理它所拥有的所有队列,管理队列的生命周期。它是队列的生存环境。类似java中的context(上下文);
4:通道:从java角度,它本质上就是一个socket。通过ip,端口,用于与其它机器建立连接。
- wmq 概念与数据库比较
1:websphere mq 程序:相当于数据库程序
2:队列管理器:相当于数据库中的一个具体数据库实例;如:数据库中的学生信息数据库。
3:队列:相当于数据库的表;
4:消息:相当于数据库的一条记录;
5:通道:这是数据库中不曾有的功能。
- wmq 原理简图
应用系统MM调用另一网络中的应用系统GG的一个功能,并传递一个参数,然后把处理结果返回给应用系统MM。
(1):应用系统通过JMS/MQI向队列管理器中的请求队列发送消息;
(2):请求队列连接发送通道,把消息发送给发送通道。
(3):本地(A)发送通道与远程机子(B)上的接收通道在网络正常的情况下建立连接,关把消息发送到远程机器(B)上的接收通道。
(4):远程机器(B)上的接收通道与其内部(B)的请求队列建立连接。并传送请求消息。
此时:本地队列与远程机子上的请求队列间接建立连接。本地请求队列中的消息发向远程机子上的请求队列
(5):远程机子上的应用系统GG在合适的时间(例如不忙时)取走其机器上请求队列中的消息进行业务处理。
(6):应用系统GG把处理的结果放入其机器上的结果队列。
(7):结果队列把结果消息发送给发送通道。
(8):B上的发送通道连接A上的接收通道,并把结果消息发送到A