コンテンツへスキップ
FindOpenSource

RabbitMQ

AMQP、MQTT、STOMP に対応し、信頼性の高いキューとルーティング、Pub/Sub メッセージングでサービスを疎結合にする、成熟した広く導入されているメッセージブローカーです。

概要

RabbitMQ は、アプリケーションが直接互いを呼び出す代わりに、キューやエクスチェンジにメッセージを発行することで非同期に通信できるようにする汎用メッセージブローカーです。AMQP 0-9-1、AMQP 1.0、MQTT、STOMP という複数のメッセージングプロトコルを実装しているため、異なる言語やフレームワークで書かれたプロデューサーとコンシューマーが同じブローカーを介してメッセージをやり取りできます。

エクスチェンジとバインディングによるルーティングモデルは、一般的なメッセージングパターンを標準でサポートします。ワーカー間でバックグラウンドジョブを分散させるシンプルなワークキュー、複数のコンシューマーへのファンアウトを行う Pub/Sub、より選択的な配信のためのトピックベースのルーティングなどです。RabbitMQ は高可用性のためにクラスタを組むことができ、管理 UI と CLI ツールによって、キューの深さ、コンシューマー数、メッセージの流れを本番環境で簡単に確認できます。

RabbitMQ は、サービスを疎結合にして負荷を平準化する――例えば時間のかかる処理をバックグラウンドのコンシューマーに任せる――ための、従来型で実績のあるタスクキューやメッセージブローカーを必要とするチームに向いています。高スループットなイベントストリーミングとリプレイのために構築された分散ログを求める場合は、カタログ内の Apache Kafka の方が近い選択肢になります。

カテゴリ
バックエンド
キーワード
message-queuemessage-brokerpubsubamqptask-queue
言語
Erlang
ライセンス
MPL-2.0

誤りを見つけましたか? GitHub で修正を提案する