猿问

使用哪个JMS客户端库?

我们想从我们的java实现中订阅JMS主题。JMS主题小组建议使用tibco库。我只想问是否必须使用与服务器/主题用于发送消息的库相同的库,还是可以使用任何库而不考虑JMS服务器的实现?


海绵宝宝撒
浏览 135回答 2
2回答

函数式编程

JMS是API规范。它不包含有线格式,因此JMS提供者可以按自己的意愿自由地实现它。因此,您使用的JMS客户端的类型取决于您使用的提供程序(例如,如果您使用Tibco经纪人,那么您将使用Tibco客户端)。但是,也有像Apache ActiveMQ Artemis这样的代理,它们支持多种JMS实现(即OpenWire和内核)。还有Qpid JMS客户端,可以在支持AMQP的任何代理上运行。

小怪兽爱吃肉

JMS提供者,还有很多,希望您使用他们的产品。因此,您必须为所有客户使用同一公司的资料库。例如,EMS客户端无法与ActiveMQ Broker配合使用,反之亦然。通常,“有线格式”是专有的,因此不可能仅根据TIBCO EMS / Solace / MQ有线格式进行编码。使用AMQP或MQTT解决方案,这种情况会更好一些。这里的有线格式是公共知识,任何人都可以构建自己的AMQP客户端库,并且他们都可以一起工作。但是话又说回来,AMQP API通常是不同的。因此,最佳点可能是基于AMQP的JMS(例如QPid)。
随时随地看视频慕课网APP

相关分类

Java
我要回答