7.2.4. 低速なコンシューマー処理設定プロパティー

AMQ 6 と同様に、AMQ Broker 7 は低速なコンシューマーを検出し、継続して低速なコンシューマーを自動的に停止できます。これは AMQ 6 ではデフォルトで有効になっていましたが、AMQ Broker 7 ではデフォルトで無効になっています。

ブローカーがコンシューマーを「低速」と判断する方法も異なります。AMQ Broker 7 では、コンシューマーが確認応答したメッセージの数に基づいてコンシューマーを低速と見なします。AMQ 6 では、事前フェッチバッファーの充足度に基づいてコンシューマーを低速と見なしました (バッファーが継続して一杯である場合、クライアントのメッセージ消費速度が遅すぎる可能性があります)。

以下の表は、AMQ 6 の低速なコンシューマー処理設定プロパティーを AMQ Broker 7 の同等のプロパティーと比較します。

設定の対象AMQ 6 の場合AMQ Broker 7 の場合

コンシューマーが停止されるまでに低速と見なされる回数。

maxSlowCount

デフォルトは -1 (制限なし) です。

同等のものはありません。他の低速なコンシューマー処理プロパティーを使用して、低速なコンシューマーを制御できます。

コンシューマーが停止されるまで継続的に低速でいられる時間

maxSlowDuration

デフォルトは 30000 ミリ秒です。

<slow-consumer-threshold>

AMQ Broker 7 では、これはコンシューマーが「低速」とみなされるまでのメッセージ消費の最小レートです (1 秒あたりのメッセージ数で測定)。デフォルトは -1(しきい値なし) です。

コンシューマーが低速かどうかを再度確認するまでにブローカーが待機する時間

checkPeriod

デフォルトは 30000 ミリ秒です。

<slow-consumer-check-period>

AMQ Broker 7 では、これは秒単位で測定されます。デフォルトは 5 です。

ブローカーが低速なコンシューマーと共に接続を終了するかどうか。

abortConnection

デフォルトは false です。

同等のものはありません。AMQ Broker 7 では、低速なコンシューマーが停止されると、接続も終了されます。

低速なコンシューマーが検出された場合に適用するポリシー。

同等のものはありません。

<slow-consumer-policy>

デフォルトは NOTIFY で、CONSUMER_SLOW 管理通知をアプリケーションに送信します。

KILL ポリシーを使用して、コンシューマーの接続を終了することもできます。ただし、これは、その接続を使用する他のクライアントスレッドに影響を及ぼします。

関連情報

  • 低速なコンシューマーの処理方法についての詳細は、『Configuring AMQ Broker』「Handling Slow Consumers」を参照してください。