2011-11-11 4 views
3

私は自分の頭脳をJMSの周りに入れようとしており、非常に役に立ちそうなsourcesexamplesを読んでいます。私は今ここで大きな図を見て、JMSの背後にあるすべての理論を実際のエンタープライズテクノロジーが使用される実用的な文脈に入れようとしています。 MOM用のJava API、(2)ActiveMQの - - 多くのJMSの実装の1つ、(3)EIP - (1)JMS:そこでここでは、4つの要素を持っているJMSがサービスバスにどのように関係するか

enter image description here

(4)Apache Camel、その獣のオープンソースの実装です。私は理解し始めてばかりですが、興味深く不思議な獣です。

私は現在、これらのコンポーネントを連携させて、JMS(実際にはエンタープライズクラスのメッセージング)を実際に見ようとしています。

私が探している最初のことは、EIPが何であるかの簡潔で簡潔な定義だと思います。それらは、MOMがどのように動作すべきかについての一連の設計パターンであるように思われますが、私はすでにメッセージングの概念をあまりにも曖昧にしているので、これはあまりにもあいまいな定義かなりハードコアのコンセプト。

Camel、Mule、ServiceMixのようなフレームワークがそれらを実装し、サーバ側のコンポーネント(「エンドポイント」)が互いに効率的にメッセージすることを可能にする「取得」します。

この質問に最も重要なことは、これら4つのコンポーネントが互いにどのように関係しているかを理解することです。私はこれを理解することで、ほとんどの点を結ぶのに役立つと思います。とにかく重要なものです。

ので、図中の私はすべての6人の可能な関係を標識し、以下それらを参照の上:

  1. JMS:ActiveMQのは - 私は、HibernateはJPAの実装である多くのと同じように、JMSの実装であることをActiveMQのを理解しています。これは正しいです?
  2. ActiveMQ:Camel - Camelには、ActiveMQなどのJMS実装にメッセージをプッシュする機能があります。この場合、ActiveMQはラクダエンドポイントです。正しい?
  3. EIP:Camel - CamelはEIPの実装です。最初のEIPが何であるかを理解することも、このセットアップ全体を理解するうえで重要です。
  4. EIP:JMS - これら2つの間に直接の接続はないかもしれませんが、メッセージングは​​EIPの中心にあるようで、JMSはメッセージングの基盤です。これは公正な評価ですか?
  5. 私はEIP:ActiveMQとJMS:Camelの間に関係を残しました。これらのシステム間で知っておくべき "大きな概念"がある場合は、

EIPにわかりやすい定義を入れて、これらのコンポーネントが互いにどのように関係しているかを理解するのに役立ちます。前もって感謝します!

答えて

2
  1. ActiveMQは、MOMの実装です。 JVM言語で使用するJMS APIのクライアント側実装を提供します。 JMSは単なるAPIですが、実装はワイヤ形式で話しているブローカーに結びついているため、たとえばActiveMQ JMS実装を使用してWebsphereMQと通信することはできません。他の言語プラットフォーム(CMS経由のC/C++、NMS経由の.Net)からActiveMQに話すための他のAPIがあります。また、Ruby、Javascriptなどのクライアントライブラリを持つSTOMPプロトコルなど、他の「JMS以外のもの」のメカニズムを介してActiveMQと対話することもできます。
  2. はい。
  3. はい、いいえ。 CamelはEIPと同じ「言語」を使用しているので、Camelを使用すると自然にEIPを取得します。あなたがAPIで探しているものを知ることができます。キャメル・イン・イン・アクションで2つのことをよく理解し、もう少し詳しく知りたいときはEIPサイト(http://www.eaipatterns.com/)を参照することをお勧めします。
  4. もう一度yesとno。メッセージングを使用して実装されるパターンはたくさんあります(JMSは唯一の味です)が、より広範なアプリケーション(スプリッタ、アグリゲータなど)を持つ多数のパターンがあります。 EIPサイトのインデックスを見て、これを感じてください。
  5. Camelは、そのAPI(Websphere、Sonic、OpenMQなど)をサポートする基本的なメッセージングプロバイダを使用するJMSコンポーネントを使用して、他のシステムと通信できます。また、AMQP APIをサポートするような他のメッセージング技術についても話すことができます。

お役に立てば幸いです。

+0

恐ろしい、それを大声でわかりました。ありがとうジェイク! – IAmYourFaja

関連する問題