このトピックでは、ApsaraMQ for RabbitMQ インスタンスのピーク時の秒間トランザクション数 (TPS) をクエリする方法について説明します。
背景情報
実際のトラフィックのピーク TPS がインスタンスの TPS 制限を超えると、ApsaraMQ for RabbitMQ インスタンスはスロットルされます。
速度制限によるビジネスの中断を防ぐため、インスタンスのピーク TPS を日常の O&M (運用保守) タスクにおける主要なメトリックとして監視してください。この実践により、インスタンスの仕様を超えるリスクがある場合に早期警告が提供されます。ピーク TPS の変化を観察することで、ビジネスの変動を理解し、現在のインスタンスタイプがビジネスニーズを満たしているかどうかを判断することもできます。
クエリ方法
ApsaraMQ for RabbitMQ は、インスタンスのピーク TPS をクエリするための以下の方法をサポートしています。
|
クエリ方法 |
説明 |
時間粒度 |
リソースレベル |
|
利点:
|
分レベルのピーク TPS この値は、1 分間隔内のインスタンスの 1 秒あたりの最大 TPS です。 |
インスタンスレベルのピーク TPS |
|
|
第 2 レベル ピーク TPS |
|
|
|
第2レベル ピーク TPS |
インスタンスレベルのピーク TPS |
Cloud Monitor を使用したインスタンスのピーク TPS のクエリとアラートの設定
インスタンスのピーク TPS のクエリ
ApsaraMQ for RabbitMQ コンソールにログインします。左側のナビゲーションウィンドウで、インスタンスリスト をクリックします。
インスタンスリスト ページのトップナビゲーションバーで、管理対象のインスタンスが存在するリージョンを選択します。 次に、インスタンスリストで、管理対象のインスタンス名をクリックします。
-
左側のナビゲーションウィンドウで、モニタリング指標 をクリックします。
-
「モニタリング指標」ページで、[インスタンス] を [グループ] ドロップダウンリストから選択し、クエリの時間範囲を指定します。
次の図は、インスタンスのピーク TPS をクエリする例を示しています。

API ピーク TPS のアラート設定
ApsaraMQ for RabbitMQ コンソールにログインします。ApsaraMQ for RabbitMQ コンソール。左側のナビゲーションウィンドウで、インスタンスリスト をクリックします。
インスタンスリスト ページのトップナビゲーションバーで、管理するインスタンスが存在するリージョンを選択します。次に、インスタンスリストで、管理するインスタンスの名前をクリックします。
-
左側のナビゲーションウィンドウで、モニタリング指標 をクリックします。
-
モニタリング指標 ページの右上隅で、[アラートルールの作成] をクリックします。
CloudMonitor の [アラートルールの作成] パネルにリダイレクトされます。
-
「[ルールの説明の設定]」パネルで、アラートルールを設定します。[モニタリングメトリクス] ドロップダウンリストから、 を選択します。詳細については、「アラートサービス」をご参照ください。
インスタンス詳細ページからのインスタンスのピーク TPS のクエリ
ApsaraMQ for RabbitMQ コンソールにログインします。ApsaraMQ for RabbitMQ コンソール の左側のナビゲーションウィンドウで、インスタンスリスト をクリックします。
[インスタンスリスト] ページのトップナビゲーションバーで、管理するインスタンスが存在するリージョンを選択します。次に、インスタンスリストで管理するインスタンスの名前をクリックします。
-
インスタンス詳細 ページで、ピーク TPS 照会 タブをクリックします。
説明この方法を使用して、過去 15 日間のピーク TPS データをクエリできます。結果は秒単位の粒度で提供されます。過剰なデータ表示を避けるため、過去 10 分間のデータのみが表示されます。
-
インスタンスレベルのピーク TPS をクエリするには:
インスタンスによる照会 タブをクリックし、期間を選択してから、[クエリ] をクリックします。

-
API レベルのピーク TPS をクエリするには:
API によるクエリ タブをクリックし、時間範囲を選択し、[クエリ] をクリックします。

-
ログクエリを使用したインスタンスのピーク TPS のクエリ
詳細については、「クエリと分析のクイックスタート」をご参照ください。
以下は分析文の例です。
(Action : ConnectionOpen or Action : ChannelOpen or Action: ExchangeDeclare or Action: QueueBind or Action : QueueDeclare or Action : QueueDelete or Action : ExchangeDelete or Action : QueueUnBind or Action : ExchangeBind or Action : ExchangeUnBind or Action : BasicConsume or Action : BasicReject or Action : BasicRecover or Action : SendMessage or Action : BasicAck or Action : BasicNack or Action : BasicGet ) | select from_unixtime(cast(microtime as bigint)/1000/1000) as time, COUNT(*) as count GROUP by time ORDER by time limit 90000000