根据您需要的面向消息的中间件中的特性,您可能需要一个非 JMS 消息提供程序系统。MQTT 是一种最适合物联网 (IoT) 和 AMQP 的需求的消息协议。它是为实现跨供应商移植而开发的。
JMS 不能用于与这些系统通信。通过使用它们提供的客户端,可以使用它们提供的所有特殊功能。有关 MQTT 的更多信息,请访问下面这个网站:
http://mqtt.org/
Apache Kafka 是一个非 JMS 提供程序,但它提供了一个 Java 驱动程序。人们提出了一种增强请求,希望实现一个适配器,让客户端能与 Apache Kafka 传输 JSM 消息,但此问题仍待解决。所以最好使用 Kafka 提供的 Java 驱动程序。有关 Kafka 的更多信息,请访问下面这个网站:
http://kafka.apache.org/
RabbitMQ 是一个消息代理系统,它实现了 AMQP 协议,而且还提供了一个 Java 客户端。有关 RabbitMQ 的更多信息,请访问下面这个网站:
https://www.rabbitmq.com/
Spring 有一个与基于 AMQP 的消息系统通信的库。Spring 还提供了对 MQTT 协议的支持。有关 Spring 的更多信息,请访问下面这个网站:
http://projects.spring.io/spring-amqp/
可以看到,支持结合使用 Java 和非 JMS 消息系统。
本文重点介绍了如何使用基于 Java 的微服务实现微服务在数据处理方面保持可管理。下一部分我们将回到第一部分中讲到的演化策略,将介绍可在实践中考虑和应用的可能战略。好了,学习愉快,下次再见!
来源: http://www.ibm.com/developerworks/cn/cloud/library/cl-cn-ibm-bluemix-container-service-whitepaper/index.html