ibm mq异步与同步
IBM BPM V8.5是一个全面的业务流程管理平台,为管理业务流程提供了全面的可见性和洞察力。 IBM MQ是健壮的消息传递中间件,可简化并加速跨多个平台的各种应用程序和业务数据的集成。 IBM MQ促进了应用程序和系统之间有保证,安全和可靠的信息交换。 如果您需要从业务流程中向其他系统发送和接收数据,那么IBM MQ通常是自然的选择,因为它具有快速无缝连接的记录。
本教程描述了将数据从业务流程发送到IBM MQ的方法,以及从IBM MQ接收数据以驱动业务流程向前发展的方法。 这些示例逐步介绍了一个简单的用例,以描述不同的场景。 本教程假定您具有IBM BPM和IBM MQ的基本知识。 要遵循并运行教程中提供的代码示例,您需要以下软件:
- IBM Business Process Manager Standard或Advanced V8.5.x(本教程使用IBM BPM V8.5.6,在发布时可用。)
- IBM MQ V8.x
- 基于Eclipse的J2EE开发环境
业务流程用例概述
本教程使用一个简单的信用卡应用程序示例业务流程来演示将IBM BPM与IBM MQ集成的各种方法。 该过程的第一步是收集客户的信息,例如社会安全号码(SSN)和客户名称。 然后,客户SSN通过IBM MQ发送到信用评分服务提供商,并且提供商通过IBM MQ将信用评分发送回业务流程。 如果信用评分低于650,则需要经理批准。 图1显示了Process Designer中的示例业务流程定义(BPD)。
图1.信用卡申请流程,IBM BPM中的示例流程
为了简化过程,脚本活动用于初始化客户信息。 信用检查系统服务将包含客户信息的消息发送到IBM MQ。 然后,在该流程中放置一个消息事件,以等待通过IBM MQ发送回的信用检查结果。 消息事件被附加到秘密代理以等待消息。
在IBM BPM流程中将消息发送到IBM MQ
在业务流程中,您可以通过以下三种方式将消息发送到IBM MQ:
- 使用
teamworks.MQMessages
Java™服务putMessage
方法,该方法可在integration.jar
文件中立即使用。 此选项是最简单的方法,但是它提供的定制非常有限。 要允许访问,您必须将IBM BPM Java进程运行所在的用户标识和IBM BPM主机都添加到IBM MQ中的服务器连接通道授权中。 - 如果您使用的是IBM BPM Advanced,则带有IBM MQ绑定的Advanced Integration Service(AIS)是更好的选择。 IBM MQ绑定提供了更高程度的IBM MQ连接性定制。 要使用IBM MQ绑定创建AIS服务,请参阅IBM知识中心上的IBM BPM文档中的WebSphere MQ绑定主题。
- 如果使用的是IBM BPM Standard,如果可立即使用的
MQMessages
类不能满足您的需求,请考虑使用定制Java消息服务(JMS)客户机将消息发送到IBM MQ的Java服务。 像对待任何JMS客户端一样对待自定义JMS客户端。 JMS客户端类需要打包在.jar文件中,并包含在业务流程应用程序中。 必须在JMS客户端使用的IBM BPM服务中定义IBM MQ资源。
本教程提供的样本代码说明了如何使用MQMessages
类使用选项1。 参见图2。
图2. Credit Check Service图中的MQMessages类示例
MQMessages
类打包在integration.jar
文件中,该文件可在System Data工具箱中立即使用。 putMessagemethod
方法用于将消息放入IBM MQ。 在“属性”选项卡上,单击“ 数据映射”以配置连接到IBM MQ所需的定制,如图3所示。