この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 3645|答える: 0

RabbitMQ AMQPメッセージアーキテクチャの詳細な説明

[リンクをコピー]
掲載地 2022/08/14 23:32:43 | | | |
AMQPプロトコルの紹介

AMQP(Advanced Message Queuing Protocol)は、統一されたメッセージングサービスを提供するアプリケーション層標準プロトコルであり、メッセージ指向ミドルウェア向けに設計されたアプリケーション層プロトコルのオープンスタンダードです。 AMQPは、プロセス間で非同期メッセージを渡すためのネットワークプロトコルです。

このプロトコルに基づくクライアントやメッセージミドルウェアは、異なるクライアントやミドルウェア製品、異なる開発言語に制限されることなくメッセージを配信できます。

AMQPの主な特徴は、メッセージ指向、キューイング、ルーティング(ピアツーピアやパブリッシュ/サブスクライブを含む)、信頼性、そしてセキュリティです。 AMQPはメッセージ提供者とクライアントの動作を強制し、異なるベンダー間の真の相互運用性を可能にします。

AMQPプロトコルの詳細な説明
https://www.itsvse.com/thread-10347-1-1.html

メッセージのルーティング

AMQPアーキテクチャにおいて、成功するメッセージルーティングは以下の3つの部分から成り立っています。

  • エクスチェンジ:プロデューサーがメッセージを公開する場所
  • キュー:消費者がメッセージを受け取る場所
  • バインディング:スイッチから特定のキューへのメッセージのルーティング方法


交換とバインディング

では、メッセージはどのようにしてキューに届くのでしょうか? 消費者にメッセージを届けたい場合、まず交換機に送らなければなりません。 その後、特定のルールやルーティングキーに基づいて、RabbitMQはどのキューにメッセージを配信するかを決定します。

ルール、つまりルーティングキーは、キューをエクスチェンジにバインドすることを可能にします。 RabbitMQはメッセージ内のルーティングキーとバインディングに使われたキーを照合しようとします。 メッセージはファンアウト、トピック、ダイレクト、ヘッダーの4つの交換タイプのいずれかに基づいてキューに配信されます



ファンアウト・エクスチェンジ

このタイプの交換は、受信したすべてのメッセージを割り当てられたすべてのキューにブロードキャストします。 公開されたメッセージに添付されたルーティングキーは無視されます。

トピック交換

このタイプの交換では、メッセージはルーティングキーに基づいてキューに送信されます。 つまり、トピック交換に送られるメッセージは特定のルーティングキーを持たなければならず、それはポイントで区切られた単語のリストでなければなりません(例:'acs.deviceoperations.')。 文言の制限は255バイトです。

バインディングキーはルーティングキーと同じ形式でなければなりません。 したがって、特定のルーティングキーで送信されたメッセージは、対応するバインディングキーを持つ各キューに届けられます。

バインドキーは以下の式ルールを許可します:

*(アスタリスク)は1語のみ置き換えられます
#(ハッシュ)は0語以上の単語を置き換えることができます
キューが「#」(ハッシュ)バインディングキーでバインドされている場合、ルーティングキーに関係なくすべてのメッセージを受け取ります。これはFanoutファンアウト交換と同様にです。

ダイレクトエクスチェンジ

キューが宣言されると、キュー名をルーティングキーとして使うスイッチに自動的にバインドします。 ルーティングキーが一致すれば、メッセージは適切なキューに配信されます。

ヘッダー交換

ヘッダースイッチはトピックスイッチにやや似ていますが、トピックスイッチとは異なり、ルーティングはルートキーに基づいており、ヘッダースイッチのルーティング値はメッセージのヘッダーデータに基づいています。
トピックスイッチのルーティングキーは文字列のみであり、ヘッダースイッチは整数とハッシュの両方が可能です。

(終わり)





先の:AMQPプロトコルの詳細な説明
次に:[ターン]。 NETパフォーマンス最適化 - リストコレクションを迅速にトラバース
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com