使用使用WebSphereESB构建企业服务总线,第构建企业服务总线,第4部分部分
本文内容包括:
引言
更新的场景
设置 WebSphere MQ
中介模块
运行更新的场景
结束语
下载
参考资料
在本系列的前两篇文章中,我们讨论了如何利用 IBM® WebSphere® Enterprise Service Bus (ESB) 中对 JMS 和
Web 服务的支持。在本期中,我们将介绍如何利用 WebSphere ESB 6.0.2 版中针对直接 MQ 连接而引入的一种新
型绑定,以便将 IBM WebSphere ESB 中介模块与现有的 WebSphere MQ 环境连接到一起。
引言引言
我们已经介绍了 WebSphere Enterprise Service Bus (ESB) 支持的两种最常用的连接协议——JMS 和 Web 服务
(SOAP/HTTP),现在将向这一组合中添加实际企业环境中通常需要的另一种协议:WebSphere MQ。
有很多应用程序已支持通过 WebSphere MQ 与外部应用程序进行消息交换,它们通常使用 ESB 在 MQ 上将应用程序功能转
换为或公开为服务。因此,我们在此处将演示如何利用 WebSphere ESB 中对 WebSphere MQ 的支持来将支持 MQ 通信的现
有应用程序绑定到面向服务的环境中。
更新的场景更新的场景
在第 2 部分中,我们介绍了 Posts-R-Us 传递的每个包如何产生一条先发送至 ESB,再由 ESB 转发给使用消息驱动 (MDB)
Bean 的 Java™ EE 应用程序的消息。此级别的间接寻址方式会在生成事件(即包传递事件)的系统与使用该事件的系统(接
收该消息的 MDB)之间建立一个分离层。在 SOA 上下文中,这意味着 ESB 向客户机提供了一个虚拟服务接口,该接口隐藏
了服务提供程序的实际位置和接口。
在 Posts-R-Us 中,有一个现有的基于大型机的应用程序也需要接收关于该传递的包的消息。它通过 WebSphere MQ 队列以
XML 格式接收这些消息。因此,设计团队决定更改 ESB 中介:添加一个连接,将传入的通知消息转发给适当的 MQ 队列,同
时继续将该消息发送给原始的 Java EE(前身为 J2EE)应用程序。图 1 显示了更新的体系结构。
图图 1. 更新的包传递通知体系结构更新的包传递通知体系结构
如图所示,消息用单独的进程转发,目标队列由远程 WebSphere MQ 队列管理器管理;而原始队列则不改变进程,它仍由
WebSphere ESB 管理并从中传输至消息驱动 Bean。
此处需要注意以下几点,所有这些注意事项都说明了 ESB 对系统体系结构的巨大价值:
客户机应用程序不受此更改影响。它会继续通过 ESB 将 JMS 消息发送至目的地。
现有的 MDB 应用程序也不受此更改影响。
现有的大型机应用程序将继续从关联的 WebSphere MQ 队列中接收消息。
设置设置 WebSphere MQ
要运行反映上述体系结构的示例,需要创建将从 WebSphere ESB 接收消息的队列。(在实际企业环境中,大型机应用程序
帧听的队列可能已经存在。)为此,最简单的方法是利用 WebSphere MQ Explorer。启动此程序后,其主窗口将类似于图
2。