4.8.3. プロトコルマネージャーおよびアドレス
protocol manager と呼ばれるコンポーネントは、AMQ Broker アドレスモデル、キューおよびルーティングタイプで使用される概念にプロトコル固有の概念をマッピングします。特定の状況下では、プロトコルマネージャーが自動的にブローカー上にキューを作成することがあります。
例えば、クライアントが /house/room1/lights
と /house/room2/lights
のアドレスを持つ MQTT サブスクリプションパケットを送信した場合、MQTT プロトコルマネージャーは、この 2 つのアドレスが multicast
セマンティクスを必要とすることと理解します。そのため、プロトコルマネージャーはまず、両方のアドレスで multicast
が有効になっていることを確認します。そうでない場合は、動的に作成を試みます。成功すれば、プロトコル・マネージャーは、クライアントが要求した各サブスクリプションのために特別なサブスクリプションキューを作成します。
各プロトコルの動作は若干異なります。以下の表は、様々なタイプの queue
へのサブスクライブフレームが要求されたときに、典型的に起こることを説明しています。
キューがこのタイプのものである場合 | プロトコルマネージャーの通常のアクションは下記の通りです。 |
---|---|
永続性のあるサブスクリプションキュー |
適切なアドレスを検索し、 特別な名前を使用すると、プロトコルマネージャーは、必要なクライアントのサブスクリプションキューを迅速に特定し、クライアントの接続を解除し、後で再接続できるようにします。 クライアントがキューのサブスクライブを解除すると、キューが削除されます。 |
一時サブスクリプションキュー |
適切なアドレスを検索し、 クライアントがキューを切断すると、キューが削除されます。 |
ポイントツーポイントキュー |
適切なアドレスを探し、 キューが自動作成されると、コンシューマーがなく、メッセージがなければ自動的に削除されます。 |