Jms 从IBM MQ切换到Tibco EMS

Jms 从IBM MQ切换到Tibco EMS,jms,ibm-mq,tibco-ems,Jms,Ibm Mq,Tibco Ems,我们正在创建新的应用程序,它将在短期内使用IBM的MQ作为JMS提供商,并在一年内切换到Tibco EMS。 我的问题是,从应用程序代码的角度来看,这些更改会有多大的影响 到目前为止,在阅读JMS文档时,我的印象是它应该只需要很少的更改。是否有人对此有经验,并就在JMS提供程序之间切换所涉及的工作提供一些意见。我做过POC,在POC中,我交换了连接工厂,并使用WMQ JMS类发送给各种提供程序(TIBCO、ActiveMQ等),以证明其互换性。我还完成了从一个供应商到另一个供应商的完全交换。理论

我们正在创建新的应用程序,它将在短期内使用IBM的MQ作为JMS提供商,并在一年内切换到Tibco EMS。 我的问题是,从应用程序代码的角度来看,这些更改会有多大的影响


到目前为止,在阅读JMS文档时,我的印象是它应该只需要很少的更改。是否有人对此有经验,并就在JMS提供程序之间切换所涉及的工作提供一些意见。

我做过POC,在POC中,我交换了连接工厂,并使用WMQ JMS类发送给各种提供程序(TIBCO、ActiveMQ等),以证明其互换性。我还完成了从一个供应商到另一个供应商的完全交换。理论上,它应该非常简单

最大的变化将是连接工厂。提供程序之间JMS特定的所有内容都是相同的。代码与连接工厂的耦合越紧密,更改应用程序本身就越复杂。除此之外,您可能需要更改特定于供应商的对象实现,例如MQQueue vs Queue

mid中需要保留的另一项功能依赖于IBM端点。如果您在任何生产商上使用“目标队列管理器”,则需要更改这些管理器。WMQ有一个特定的URI来访问集群中特定队列管理器上的队列(“queue://target_qm/queue_name/" ). 如果任何应用程序使用此URI,则需要确保在此处也进行了适当的更改