扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:佚名 来源:论坛整理 2007年12月24日
关键字:
WebSphere MQ 可以在消息放入到队列中以及某些条件满足时,启动一个应用程序。这称为触发。下面是触发的工作方式:
程序将消息放入到支持触发的队列中。
如果触发的条件满足,则发生触发事件。
队列管理器检查应用程序队列所引用的进程对象。该进程对象指定了需要启动的应用程序。
队列管理器创建包含关于进程对象和队列的信息的触发消息。
将该触发消息放到启动队列。
由一个称为触发监视器 的程序负责检索消息,并启动合适的应用程序,将触发消息的信息传递给这个应用程序。
当第一次将消息放到队列中时、当队列中包含的消息达到某个数目时、或者每次将消息放到队列中时,都可能发生触发事件,尽管最后这种情况通常不推荐使用。
数据完整性
有些应用程序使用会话式的程序到程序的通信方式,以使用两段式提交协议来支持分布式工作单元的实现,如图 6 中所示。
图 6. 同步分布式工作单元
这种功能仅在下面的情况下需要使用,业务要求在任何时刻都必须非常精确地维护两个分布式数据库之间的一致性。在实际中,这种类型的需求很少出现。当这种需求的确存在时,单个分布工作单元可能使用许多资源,并且变得非常复杂,尤其是当涉及到许多处理时。
WebSphere MQ 提供了一种更简单的解决方案,使得多个工作单元可以异步执行,如图 7 中所示。
图 7. 异步分布式工作单元
第一个应用程序写入数据库,将包含对其他系统中的第二个数据库进行更新所需数据的消息放到队列中,然后提交对这两种资源的更改。因为该队列是远程的,所以消息仅进入第一个工作单元的传输队列。
第二个工作单元包含发送 MCA 从传输队列中获取该消息,并将其发送给接收 MCA,而后者负责将该消息放到目标队列。
在第三个工作单元中,第二个应用程序从目标队列中获取该消息,并使用该消息中包含的数据对数据库进行更新。
工作单元 1 和 3 的事务完整性,加上工作单元 2 中由 WebSphere MQ 提供的消息的一次且仅一次的可靠传递,从而确保了整个业务事务的完整性。
安全性
WebSphere MQ 中的安全特性包括:
队列管理器可检查某个用户是否经过授权可以提交管理队列管理器的命令。
队列管理器可检查某个用户或应用程序是否经过授权可以在指定的操作中访问 WebSphere MQ 资源,如队列。
在允许 MCA 之间进行消息通信之前,MCA 可以对合作伙伴 MCA 进行身份验证。
可以在 MCA 发送消息之前对其进行加密,然后在接收到该消息之后再对其进行解密。
消息描述符可以包含用户 ID 和关于消息发出者的其他信息。这种信息称为消息上下文,它可以用来对消息进行身份验证,并检查该消息的发送者是否经过授权可以访问接收系统中的 WebSphere MQ 资源。
WebSphere MQ 客户端
WebSphere MQ 客户端可以安装在没有运行队列管理器的系统中。客户端可以将在同一系统中运行的应用程序作为 WebSphere MQ 客户端,以连接到运行于另一个系统中的队列管理器,并向该队列管理器发出 MQI 调用。这种应用程序称为 WebSphere MQ 客户端应用程序,而这种队列管理器称为服务器队列管理器。图 8 显示了这种配置。
图 8. 客户端和服务器之间的链接
WebSphere MQ 客户端应用程序和服务器队列管理器使用 MQI 通道 实现彼此之间的通信。当客户端应用程序发出 MQCONN 或 MQCONNX 调用时启动 MQI 通道,当客户端应用程序发出 MQDISC 调用时结束该通道。
要使 WebSphere MQ 客户端进行有效地处理,需要快速的和可靠的同步通信连接。
WebSphere MQ Framework
用户和软件供应商可以使用已定义的接口来扩展或替换队列管理器功能。WebSphere MQ Framework 提供了这样的接口。
WebSphere 允许对各种功能进行修改,以便:
提供选择是否使用 WebSphere MQ 所提供的组件、或对其进行替换、或使用其他的组件对其进行扩充的灵活性。
允许独立的软件供应商通过提供其他新技术所使用的组件,从而参与其中,无需对 WebSphere MQ 内部的内容进行更改。
允许 WebSphere MQ 更快地利用各种新技术,从而更迅速地提供相关产品。
WebSphere MQ Framework 中的组件包括:
触发监视器接口 (TMI)
消息通道接口 (MCI)
名称服务接口 (NSI)
安全支持接口 (SEI)
数据转换接口 (DCI)
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者