我是 Messaging 的新手,想知道 ActiveMQ
、Mule
、ServiceMix
和 Camel
之间的区别
有人知道这些产品的不同之处吗?
提前致谢!
编辑:也想知道学习这些东西的好地方/资源。
最佳答案
ActiveMQ 是一个消息代理,它实现了 JMS API 并支持 number of cross language clients and network protocols .它允许您实现队列或主题并编写监听器或订阅者以响应队列事件。
Mule 和 ServiceMix 是开源 ESB(企业服务总线)。 ESB 具有 JMS 之外的功能:排队是关键,但转换、路由、日志记录、安全性等也是如此。
Apache Camel是 Enterprise Integration Patterns 中模式的实现.可以使用JMS等components将那本书中的想法付诸实践。
JMS 是其他技术的基础,例如 JDBC 是 Hibernate、iBatis 等的基础。
JMS 是 Java API 和规范和 TCK(Java EE 的一部分)。 ActiveMQ 是它的一个特殊实现。
Camel 可以使用 ActiveMQ(Camel 捆绑在 ActiveMQ 代理中,因此您可以轻松地在 JMS 之间路由到 Camel 支持的其他组件)。
Camel 不直接使用 Mule 或 ServiceMix;尽管 ServiceMix 使用 Camel 作为其首选的路由引擎和 EIP 实现。 Camel 确实有 ton of different components尽管它使用了各种不同的技术。
关于Java 消息传递 : Difference between ActiveMQ, Mule、ServiceMix 和 Camel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2705043/