web-dev-qa-db-ja.com

Javaメッセージング:ActiveMQ、Mule、ServiceMix、Camelの違い

私はメッセージングが初めてで、ActiveMQMuleServiceMixCamelの違いを知りたい

これらの製品のそれぞれがどのように異なるか誰でも知っていますか?

前もって感謝します !

編集:これらのことを学ぶのに適した場所/リソースも知りたいです。

57
peakit

ActiveMQは、JMS APIを実装し、 クロス言語クライアントとネットワークプロトコルの数 をサポートするメッセージブローカーです。キューまたはトピックを実装し、キューイベントに応答するリスナーまたはサブスクライバーを作成できます。

MuleとServiceMixはオープンソースのESB(エンタープライズサービスバス)です。 ESBにはJMSを超える機能があります。キューイングが重要ですが、変換、ルーティング、ロギング、セキュリティなども重要です。

Apache CamelEnterprise 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は、優先ルーティングエンジンおよびEIP実装としてCamelを使用しています。 Camelには さまざまなコンポーネントのトン がありますが、さまざまな異なるテクノロジーを使用しています。

76
duffymo

まず定義しましょう

[〜#〜] jms [〜#〜][[〜#〜] j [〜#〜] ava [〜#〜] m [ 〜#〜]メッセージ[〜#〜] s [〜#〜]サービスプロトコル仕様。
[〜#〜] esb [〜#〜] is [〜#〜] e [〜#〜] nterprise [〜# 〜] s [〜#〜]サービス[〜#〜] b [〜#〜] us。
[〜#〜] jbi [〜#〜] is [〜#〜] j [〜#〜] ava [〜# 〜] b [〜#〜]使いやすさ[〜#〜] i [〜#〜]統合。

これで詳細に答えることができます:

Apache ActiveMQは上記の実装です[〜#〜] jms [〜#〜][〜#〜] j [〜#〜] ava [〜#〜] m [〜#〜]メッセージ[〜#〜] s [〜#〜]サービス)。

Apache Camelは、エンタープライズ統合パターンを実装するメッセージルーティングエンジンです。
多くの定義済みコンポーネントを提供します。
その主要なコンポーネントの1つがサポート[〜#〜] jms [〜#〜][〜#〜] j [〜#〜] ava- [〜#〜] m [〜#〜]メッセージ[〜#〜] s [〜#〜]サービス)。

Apache ServiceMixは上記の実装です[〜#〜] esb [〜#〜][〜#〜] e [〜#〜] nterprise [〜#〜] s [〜#〜]サービス[〜#〜] b [〜#〜] us)
[〜#〜] jbi [〜#〜]と互換性があります([〜#〜] j [〜#〜] ava [〜#〜] b [〜#〜]使いやすさ[〜#〜] i [〜#〜] ntegration)仕様。
また、Camelでは利用できない多くのインフラストラクチャ機能を提供します(サービスOSGIバンドルサポートなど)。
SMはキャメルを多用します。

Mule[〜#〜] esb [〜#〜][〜#〜] e [〜#〜] nterpriseの別の実装です[〜#〜] s [〜#〜]サービス[〜#〜] b [〜#〜] us)ですが、Camel/ServiceMixファミリには関連していません。

54
Henryk Konsek

Muleは、エンドツーエンドの統合ソリューションを提供するエンタープライズサービスバスです。

ActiveMQは、サブスクライバーとレシーバーの間でメッセージをキューイングするためのメッセージブローカーです。

ServiceMixもESB、つまりエンタープライズサービスバスです

1
Rajkumar Epari

Camelを使用すると、さまざまなドメイン固有の言語でルーティングルールとメディエーションルールを定義できます。 MuleとSeriviceMixはESBです。 ActiveMQはメッセージングサービスです。

1
Aakash Kedia

Apache Service Mix ::そのESB(Enterprise Service Bus)、JBIコンテナ、統合プラットフォーム。

Apache Camel:EIP(エンタープライズ統合パターン)を実装するスマートルーティングおよびメディエーションエンジン。

Apache ActiveMQ:そのJMSを実装するメッセージブローカー。

1
Srini

Apache CamelはEIP(Enterprise Integration Patterns)の実装です

ServiceMixは、SOA環境でのESBの原則に準拠した製品です。

アクティブMQは、JMS APIの他のどの実装とも同等です

MuleもESBです