我们正在尝试与外部组织的远程计算机上的WebSphere MQSeries安装进行通信。我们自己没有IBM WebSphere MQSeries。
我一直在寻找Apache ServiceMix / Camel / ActiveMQ等开源替代品以及WebSphere MQ的Oracle Database Gateway(因为我们使用的是Oracle),但每个解决方案都需要提供客户端安装作为SupportPac MQC7,这是免费的下载加上IBM jar com.ibm.mqjms.jar
有没有办法在纯粹使用非Websphere MQSeries软件的生产中与WebSphere MQSeries交换消息?
谢谢
答案 0 :(得分:5)
最新的WMQ客户端包含jar文件和所有本机WMQ诊断和工具。另请注意,最新的发行版包括免费的扩展事务客户端,并在常规jar文件中包含该功能。 (换句话说,不再是单独的ETClient.jar文件。)最新下载位于SupportPac MQC75。
请注意,下载是安装程序文件,不包含jar文件作为单独的文件夹。 IBM的目的是让您在运行WMQ客户端的每台服务器上运行安装程序。虽然这比仅抓取jar文件有点重,但安装程序包含许多诊断工具,例如dspmqver
,本机WMQ跟踪,mqrc
程序告诉您返回代码的含义,代码安装完整的捆绑包后,IBM提供支持要容易得多。考虑到它们为免费组件提供支持,要求完全安装对我来说似乎是合理的。
除了使用官方WMQ客户端或其他WMQ QMgr之外,没有其他方法可以与WebSphere MQ QMgr通信。即使WMQ谈论JMS,这是一个API规范而不是协议规范。必须使用所选传输的供应商提供的Java JMS类,在这种情况下,这意味着使用IBM的JMS类。使用WMQ运行.Net代码也是如此。必须使用IBM的课程。
唯一的例外是WebSphere App Server Messaging Engines可以与WMQ进行互操作。这些是用Java编写的纯JMS消息传递引擎,但是它们理解WMQ格式和协议,并且在WMQ中看起来是另一个QMgr。因此,如果你有WAS,你可以在没有WMQ客户端或其他QMgr的情况下与WMQ交谈。
答案 1 :(得分:2)
值得了解的是,可以直接从FixCentral下载WebSphere MQ资源适配器。此安装程序非常类似于WebSphere Liberty概要文件安装程序,即您运行的jar文件,接受许可证,并且WMQ RA出现在磁盘上。然后可以将其安装到您选择的应用程序服务器上。
虽然http://www-01.ibm.com/support/docview.wss?uid=swg21633761的文档以Liberty配置文件为中心,但这与标准形式的MQ安装相同,因此可以在任何JavaEE服务器支持中使用。
WebSphere MQ RA的支持声明位于http://www-01.ibm.com/support/docview.wss?uid=swg27023129。基本上如果您可以将RA安装到符合JavaEE的服务器中,可以运行IVT,您可以提升PMR。
答案 2 :(得分:1)
WebSphere MQ具有Telemetry功能,允许将MQ服务器配置为MQTT服务器。有许多开源MQTT客户端(例如www.eclipse.org/paho)可用于使用pub / sub模型与WebSphere MQSeries交换消息