我对Apache Camel& amp; ActiveMQ并发现抓住它的概念确实很困难和困惑。实际上,我对JMS的整个概念都是新手。我真的不明白Apache Camel与ActiveMQ有什么不同,因为根据我的理解,两者都有同样的目的,即将消息从一个系统路由到另一个系统,反之亦然。有没有人有一个真实的例子,而不仅仅是书本知识,它可以清除一些东西?
答案 0 :(得分:3)
JMS,ACTIVEMQ和Apache CAMEL在世界分布式应用程序中具有相关性。
Apache Camel和ActiveMQ参与将消息从一个系统路由到另一个系统的过程,但它们在此过程中扮演不同的角色。他们解决了两个不同的问题
ActiveMQ处理基础架构部分。它提供了连接分布式系统的队列和主题。一旦消息到达队列或主题,ActiveMQ负责确保消息到达为该特定队列或主题指定的目标。
Camel可以帮助您设计您的消息应该到达最终目的地的路线。您可以选择通过多个系统发送消息以到达最终目标系统。如果您想在某些系统处理消息,它可以帮助您。它可以帮助您处理不同系统(数据格式)可以理解相同消息的方式。
类比可能有助于强调这一点: 当你从印度前往加拿大的旅程中,你决定去几个世界城市游览。 你(类似于消息)决定访问迪拜,西班牙,希腊,美国和加拿大。您将带一位帮助您预订机票的导游,帮助您以当地语言进行交流(数据格式)。 该指南知识渊博,可以帮助您购买当地的衣服,参观当地的好地方,吃当地的食物(类似于处理消息)。 本指南类似于您的Apache Camel。
但是,您的导游会使用不同的航空公司,类型的飞机,以便您到达不同的城市。这些不同的航空公司和飞机,其拥有的公司类似于Apache ActiveMQ。这是你的运输机制。
希望这能带来一些想法。