Java消息传递:Activemq,Mule,Servicemix和Camel之间的区别
-
01-10-2019 - |
题
我是消息的新手,想知道 ActiveMQ
, Mule
, ServiceMix
和 Camel
有人知道这些产品中的每一个都有什么不同?
提前致谢 !
编辑: 还想知道任何一个好地方/资源来学习这些东西。
解决方案
ActiveMQ是一个消息代理,可实现JMS API并支持A 跨语言客户和网络协议的数量. 。它使您可以实现队列或主题,并编写侦听器或订阅者来响应队列事件。
mule和ServiceMix是开源ESB(企业服务总线)。 ESB具有JMS:排队以外的功能是关键,但是转换,路由,日志记录,安全性等也是如此。
Apache骆驼 是实现模式中的模式 企业集成模式. 。它可以使用JM和其他 组件 将那本书的想法提交到位。
JMS是其他技术的基础,例如JDBC是休眠,Ibatis等的基础。
JMS是Java API,是规格和TCK(Java EE的一部分)。 ActiveMQ是IT的特殊实现。
骆驼可以使用ActiveMQ(并且Camel在ActiveMQ经纪人内部捆绑在一起,因此您可以轻松地从JMS路由到其他组件骆驼支撑)。
骆驼不直接使用m子或servicemix;尽管ServiceMix使用骆驼作为首选路由引擎和EIP实施。骆驼确实有一个 大量不同的组件 尽管使用了各种不同的技术。
其他提示
首先让我们定义
JMS 是一个 java mESSIGG sERVICE协议规范。
ESB 是 enterprise sERVICE b我们。
JBI 是 java b用途 一世ntegration。
现在我们可以详细回答:
Apache Activemq 是以上的实现 JMS (java mESSIGG sERVICE)。
Apache骆驼 是实现企业集成模式的消息路由引擎。
它提供了许多预定义的组件。
其关键组件支持之一 JMS (java mESSIGG sERVICE)。
Apache ServiceMix 是以上的实现 ESB (enterprise sERVICE b我们)
与 JBI (java b用途 一世NTEGRATION)规范。
它还提供了许多骆驼中无法使用的基础设施功能(例如服务OSGI捆绑支持)。
SM大量使用骆驼。
m子 是另一个实现 ESB (enterprise sERVICE b我们),但与骆驼/servicemix家族无关。
Apache Service Mix ::它的ESB(企业服务总线),一个JBI容器和集成平台。
Apache骆驼:实现EIP的智能路由和中介引擎(企业集成模式)。
Apache ActiveMQ:它的消息代理实现了JMS。
mule是提供端到端集成解决方案的企业服务总线。
ActiveMQ是用于在订户和接收方之间排队消息的消息代理。
ServiceMix也是ESB IE Enterprise Service Bus
骆驼使您能够用各种领域特定的语言定义路由和调解规则。 mule和serivicemix是ESB。 ActiveMQ是消息传递服务。
Apache骆驼是EIP的实现(企业集成模式)
ServiceMix是在SOA环境中符合ESB原理的产品。
Active MQ与JMS API的任何其他实现一样好
m子也是ESB