Skip to content

Instantly share code, notes, and snippets.

@disc99
Last active March 29, 2022 04:04
Show Gist options
  • Save disc99/e46b0a76cd3285f9142776a15ce578bf to your computer and use it in GitHub Desktop.
Save disc99/e46b0a76cd3285f9142776a15ce578bf to your computer and use it in GitHub Desktop.

メッセージキュー

送信元アプリケーション(Publisher)はメッセージキューミドルウェア(Broker/Queue)に対してメッセージを書き込み、連携先からのレスポンスを待つこと無く次の処理を実行。 連携先アプリケーション(Subscriber)はキュー経由でメッセージを取得し処理を進める。

image

  • メッセージ指向
  • Message Passing + Queue
    • 複数オブジェクト間でのメッセージ受け渡し
    • 受け取ったメッセージをQueueに格納
  • 非同期・疎結合
    • 送信側はメッセージ送信までを考えればよい
    • 受信側はQueueの消費だけを考えればよい
    • 分散システム・非同期処理がシンプルに書ける

代表的プロトコルと実装(ミドルウェア)

AMQP(Advanced Message Queuing Protocol)

  • 特徴
    • 高信頼性
    • 高度なメッセージ配信
    • アクセス制御
  • 実装

MQTT(MQ Telemetry Transport)

AMQP vs MQTT

AMQP MQTT
高機能・高信頼性 シンプル・省電力

SaaS

Reference

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment