1.はじめに
RabbitMQのはAMQP(アドバンスト・メッセージキュー)契約のオープンソース実装に基づいてアーランの開発です。使いやすさ、拡張性、高可用性、などの点で、ストアアンドフォワードメッセージのための分散システムでは、非常に優れています。それはほとんどの現在主流のメッセージング・ミドルウェアの一つです。
RabbitMQの公式サイト:http://www.rabbitmq.com
2、AMQP
AMQPは、メッセージ指向ミドルウェアの設計のためのオープン標準のアプリケーション層プロトコルです。メッセージミドルウェア主にコンポーネント間のデカップリングのために、メッセージの送信者、ユーザーのプレゼンスメッセージを知らなくても、同様に、ユーザーは、メッセージの送信者の存在を知っている必要はありません。AMQP主な機能は、キューのメッセージ、ルーティングされ(点を含むとパブリッシュ/サブスクライブ)、信頼性、安全性。
3、システムアーキテクチャ
次のようにおそらく、メッセージキューを使用します。
(1)メッセージキュークライアントは、チャネルを開くために、サーバーに接続します。
(2)宣言クライアント交換、および関連するプロパティを提供します。
(3)クライアントは、キューを宣言し、関連するプロパティを設定します。
(4)クライアントは、ルーティングキーを使用して、交換と結合キューの間の良好な関係を確立します。
(5)クライアント交換への配信メッセージ。メッセージ交換を受信した後、メッセージとキーバインディングに応じて、メッセージは、1つ以上のキューに配信、ルートメッセージを設定されています。
以下に示すよう:Exchangeおよびキュー:AMQPは、2つの主要コンポーネントで言います
グリーンXがExchangeで、赤は、また、ブローカーとして知られている、サーバー側にあり、どちらもキューであり、
これは、部分的に、青色のクライアントがある一方で、RabbitMQのが達成され、生産と消費の二種類があるのが普通です。
4、いくつかの概念
P:プロデューサーの送信者、データ。
C:受信者は、データの消費者です。
為替:メッセージスイッチを指定するものをキューにルーティングされたルールに従ってメッセージ。
キュー:ベクトルのメッセージキューは、各メッセージは、1つ以上のキューに入れられます。
結合:結合、その役割は、規則に従ってルーティングおよびキューバインドを交換することです。
主なルーティング:キーワードは、このキーワードに基づいて配信されるメッセージの交換をルーティングします。
バーチャルホスト:ブローカは異なるユーザー特権分離として、より多くのバーチャルホストを提供することができますウェブホスティング、。
チャネル:メッセージチャネルは、各クライアントの接続は、複数のチャネル、セッションのタスクを表す各チャネルを確立することができます。