AMQPとは?
えーえむきゅーぴー
AMQPとは、アプリケーション間でメッセージを確実にやり取りするための標準プロトコルで、メッセージキューイングに使われます。
AMQP(Advanced Message Queuing Protocol)は、異なるシステムやアプリケーション間でメッセージを信頼性高く非同期に送受信するためのオープンな通信プロトコルです。金融機関のシステム間連携を起源として開発され、ベンダーに依存しない標準仕様として広く普及しました。
AMQPの主要な概念には以下があります。
- ブローカー(Broker):メッセージを受け取り、ルーティングして配信するサーバーソフトウェアです。
- エクスチェンジ(Exchange):送信されたメッセージを受け取り、ルーティングルールに基づいてキューに振り分ける役割を担います。
- キュー(Queue):メッセージを一時的に蓄積し、コンシューマーが取り出すまで保持します。
- バインディング(Binding):エクスチェンジとキューを結びつけるルールです。
AMQPを実装した代表的なソフトウェアにRabbitMQがあります。プロデューサー(送信側)がブローカーにメッセージを送ると、エクスチェンジがルールに従ってキューに分配し、コンシューマー(受信側)がキューからメッセージを取り出して処理します。メッセージの確認応答(ACK)機構により、処理が完了するまでメッセージが失われないことが保証されます。
マイクロサービスアーキテクチャやイベント駆動型システムにおいて、サービス間の疎結合な連携を実現するための重要な技術です。
使い方・例文
ECサイトで注文が入った際に「注文確定→在庫引き当て→発送指示」という一連の処理を非同期で連携させるシステムの設計で、AMQPを使ったメッセージキューが登場します。
この用語をシェア
最終更新: