第4章 AMQP


AMQP は、メッセージを確実に送受信するためのオープンインターネットプロトコルです。複数のソフトウェアベンダーや主要な機関によってサポートされています。AMQP 1.0 は、2012 年に OASIS 標準になり、2014 年に ISO 標準になりました。

  • セッション多重化を備えたフレーム化されたプロトコル
  • ピアツーピアおよびクライアントサーバー接続をサポートする
  • ロスレスデータ交換のための標準タイプのシステムを提供する
  • 分散システムの信頼性を高めるためのフロー制御、ハートビート、およびリソース制限を提供する
  • スペース効率の高いバイナリーエンコーディングおよびパイプラインを使用して、レイテンシーを削減する

4.1. AMQP 配信保証

決済用の AMQP モデルは、メッセージ配信のライフサイクルに基づいています。リンクの両端に、メッセージ転送を表すエンティティーが作成され、一定期間存在し、最後に解決されます。つまり、忘れることができます。配信のライフサイクルを組み合わせた場合は、関心のある 4 つのイベントがあります。

  • 配信は送信者で作成されます。
  • 配信は受信者で作成されます。
  • 配達は送信者で決済されます。
  • 配達は受信者で決済されます。

送信者と受信者は同時に動作しているため、これらのイベントはさまざまな順序で発生する可能性があり、これらのイベントの順序により、メッセージ配信の保証が異なります。

最大 1 回の配信

最大 1 回の配信は、事前決済またはファイアアンドフォーゲット配信とも呼ばれます。

  1. 配信は送信者で作成されます。
  2. 配達は送信者で決済されます。
  3. 配信は受信者で作成されます。
  4. 配達は受信者で決済されます。

この設定では、送信者は受信者に到着する前に配信を決済 (つまり、忘れる) し、実行中の配信に何かが起こった場合、送信者は再送の根拠がありません。

このモードは、定期的なセンサーデータなど、一時的なメッセージの損失が許容されるアプリケーション、またはアプリケーション自体が障害を検出して再送信できるアプリケーションに適しています。

少なくとも 1 回の配信

  1. 配信は送信者で作成されます。
  2. 配信は受信者で作成されます。
  3. 配達は受信者で決済されます。
  4. 配達は送信者で決済されます。

この設定では、受信者は配信を受信したときに決済し、送信者は受信者が決済したことを確認すると決済します。実行中の配達に問題が発生した場合、送信者は再送することができます。ただし、受信者はすでに配信を忘れているため、再送するとメッセージの配信が重複します。アプリケーションは、一意のメッセージ ID を使用して重複を除外できます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.