キューはメッセージを格納するバッファーです。ApsaraMQ for RabbitMQ では、メッセージは 1 つ以上のキューに配信されます。このトピックでは、ApsaraMQ for RabbitMQ コンソールでキューを作成し、その統計を表示し、exchange にバインドし、メッセージを送信し、コンシューマータグを表示し、クリアし、削除する方法について説明します。
背景情報
コンシューマータグは、コンシューマークライアントの識別子です。ApsaraMQ for RabbitMQ コンシューマークライアントにコンシューマータグを設定できます。ApsaraMQ for RabbitMQ コンシューマークライアントにコンシューマータグを設定しない場合、ApsaraMQ for RabbitMQ サーバーは自動的に一意のタグを生成します。デフォルトのコンシューマータグを使用し、カスタムタグを設定しないことを推奨します。
コンシューマータグは一意である必要があります。あるコンシューマーによって使用されているタグを、別のコンシューマーが使用することはできません。
クライアントが使用する SDK は、接続上のコンシューマーを `Map<String, Consumer>` フォーマットで記録します。ここで、キーはコンシューマータグです。接続上の複数のコンシューマーが同じコンシューマータグを持つ場合、接続が再確立された後、コンシューマーの 1 つだけが自動的にメッセージ消費を再開します。他のコンシューマーは自動的に回復されません。
キューの作成
ApsaraMQ for RabbitMQ コンソールにログオンします。左側のナビゲーションウィンドウで、インスタンスリスト をクリックします。
インスタンスリスト ページのトップナビゲーションバーで、管理するインスタンスが存在するリージョンを選択します。次に、インスタンスリストで、管理するインスタンスの名前をクリックします。
左側のナビゲーションウィンドウで、キューリスト をクリックします。
キューリスト ページで、この vHost の横にある 切り替え ドロップダウンリストから vhost を選択します。次に、キューの作成 をクリックします。
キューの作成 パネルで、次のパラメーターを設定し、[OK] をクリックします。
パラメーター
説明
使用上の注意
キュー名
キュー名。
名前に使用できる文字は、英字、数字、ハイフン (-)、アンダースコア (_)、ピリオド (.)、番号記号 (#)、スラッシュ (/)、アットマーク (@) です。
名前の長さは 1~255 文字である必要があります。
キューの作成後に名前を変更することはできません。キューの名前を変更する場合は、キューを削除して別のキューを作成します。
amq. は予約済みのフィールドであり、exchange 名のプレフィックスとして使用することはできません。たとえば、amq.test を exchange の名前として使用することはできません。
自動削除
キューへのコンシューマーからの最後のサブスクリプションがキャンセルされた後、キューを自動的に削除するかどうかを指定します。
true: キューへのコンシューマーからの最後のサブスクリプションがキャンセルされた後、キューは自動的に削除されます。
false: キューへのコンシューマーからの最後のサブスクリプションがキャンセルされた後、キューは自動的に削除されません。
詳細設定
デッドレター exchange、デッドレタールーティングキー、メッセージの生存時間 (TTL) など、キューのその他のパラメーター。
DeadLetterExchange: デッドレターメッセージが配信される exchange。
DeadLetterRoutingKey: デッドレターメッセージのルーティングキー。デッドレター exchange は、ルーティングキーがデッドレターメッセージのルーティングキーと一致するキューにデッドレターメッセージを送信します。
MessageTTL: メッセージの TTL (ミリ秒単位)。指定されたメッセージ TTL 内に消費されないメッセージはデッドレターメッセージとなり、デッドレター exchange に送信されます。詳細については、「メッセージ TTL」をご参照ください。
統計の表示
さまざまなメトリックを表示して、問題を早期に特定し、見つけることができます。
キューリスト ページで、対象のキューを見つけ、操作 列の 詳細 をクリックします。
キュー詳細 ページで、モニタリング指標 または 指示板 タブをクリックします。
利用可能な統計は、インスタンスのエディションによって異なります。詳細は次のとおりです。
Enterprise Edition および Enterprise Platinum Edition: Managed Service for Prometheus と Managed Service for Grafana が提供するメトリックを表示できます。ダッシュボードとダッシュボードに表示されるメトリックの詳細については、「ダッシュボード」をご参照ください。
Standard Edition および Professional Edition: CloudMonitor が提供するモニタリングデータを表示できます。CloudMonitor が提供するメトリックの詳細については、「モニタリングとアラート」をご参照ください。
説明ApsaraMQ for RabbitMQ では、Standard Edition インスタンスの購入はできなくなりました。既存の Standard Edition インスタンスは引き続き使用できます。
コンシューマータグの表示
ApsaraMQ for RabbitMQ では、オンラインのコンシューマークライアントのコンシューマータグのみを表示できます。続行する前に、クライアントがオンラインであることを確認してください。
キューリスト ページで、対象のキューを見つけ、操作 列の を選択します。
Exchange によるバインド
キューリスト ページで、対象のキューを見つけ、操作 列の 詳細 をクリックします。
キュー詳細 ページで、ターゲットとしてバインド タブをクリックし、次に バインドの追加 をクリックします。
バインドの追加 パネルで、ソース Exchange を選択し、[Routing Key] テキストボックスにルーティングキーを入力して、Confirm をクリックします。
説明バインドされた exchange が x-consistent-hash exchange の場合、ルーティングキーはキューの重みを指定します。重みは 1 から 20 までの整数である必要があります。
メッセージの送信
exchange をキューにバインドした後、ApsaraMQ for RabbitMQ コンソールで exchange からキューにメッセージを送信できます。
キューリスト ページで、対象のキューを見つけ、操作 列の 詳細 をクリックします。
キュー詳細 ページで、ターゲットとしてバインド タブをクリックします。
バインディングのリストで、対象のバインディングを見つけ、操作 列の メッセージ送信 をクリックします。
メッセージ送信 パネルで、Message ID と Message Body を入力し、OK をクリックします。
キューのクリア
キューリスト ページで、対象のキューを見つけ、操作 列の を選択します。
キューの削除
キューを削除すると、キュー内の未消費のメッセージもすべて削除され、回復できません。注意して実行してください。
キューリスト ページで、必要に応じて 1 つ以上のキューを削除します。
単一のキューを削除するには: 対象のキューを見つけ、操作 列の を選択します。
または、対象のキューをクリックするか、操作 列の 詳細 をクリックします。次に、キュー詳細 ページの右上隅にある 削除 をクリックします。
複数のキューを削除するには: 対象のキューを選択し、キューリストの下にある 一括削除 をクリックします。
表示される [Note] ダイアログボックスで、メッセージを読み、[OK] をクリックします。