翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon MQ for RabbitMQ のブローカーデフォルト
Amazon MQ for RabbitMQ ブローカーを作成するときは、ブローカーのパフォーマンスを最適化するために、Amazon MQ がブローカーポリシーと vhost 制限のデフォルトセットを適用します。Amazon MQ が vhost 制限を適用するのは、デフォルト (/
) vhost のみです。Amazon MQ は、新しく作成された vhost にデフォルトポリシーを適用しません。すべての新規および既存のブローカーに対してこれらのデフォルトを維持することが推奨されますが、これらのデフォルトはいつでも変更、上書き、または削除できます。
Amazon MQ は、ブローカーの作成時に選択されたインスタンスタイプとブローカーデプロイモードに基づいてポリシーと制限を作成します。デフォルトポリシーの名前は、以下のように、デプロイモードに従って命名されます。
-
単一インスタンス –
AWS-DEFAULT-POLICY-SINGLE-INSTANCE
-
クラスターデプロイ –
AWS-DEFAULT-POLICY-CLUSTER-MULTI-AZ
単一インスタンスブローカーの場合、Amazon MQ はポリシーの優先順位値を 0
に設定します。デフォルトの優先順位値を上書きするには、より高い優先順位値を持つ独自のカスタムポリシーを作成することができます。クラスターデプロイの場合、Amazon MQ はブローカーデフォルトに対して優先順位値を 1
に設定します。クラスター用に独自のカスタムポリシーを作成するには、1
を超える優先順位値を割り当てます。
注記
クラシックミラーリングと高可用性 (HA) のため、クラスターデプロイでは ha-mode
および ha-sync-mode
のブローカーポリシーが必要になります。
デフォルトの AWS-DEFAULT-POLICY-CLUSTER-MULTI-AZ
ポリシーを削除する場合、Amazon MQ は優先順位値が 0
の ha-all-AWS-OWNED-DO-NOT-DELETE
ポリシー使用します。これは、必要な ha-mode
および ha-sync-mode
ポリシーが引き続き有効であることを確実にします。独自のカスタムポリシーを作成する場合、Amazon MQ はポリシー定義に ha-mode
および ha-sync-mode
を自動的に付加します。
ポリシーと制限の説明
以下のリストには、新しく作成されたブローカーに Amazon MQ が適用するデフォルトのポリシーと制限の説明があります。max-length
、max-queues
、および max-connections
の値は、ブローカーのインスタンスタイプとデプロイモードに応じて異なります。これらの値は、推奨されるデフォルト値 セクションにリストされています。
-
queue-mode: lazy
(ポリシー) – レイジーキューを有効にします。デフォルトで、キューはメッセージのインメモリキャッシュを保持し、ブローカーがコンシューマーにメッセージを可能な限り速く配信できるようにします。これは、ブローカーのメモリが不足し、高メモリアラームが発生する原因になる場合があります。レイジーキューは、現実的な範囲でできる限り早急にメッセージをディスクに移動しようとします。つまり、通常の動作条件下では、メモリに保持されるメッセージはそれほど多くないということです。レイジーキューを使用することにより、RabbitMQ for Amazon MQ は、はるかに大きなメッセージング負荷とはるかに長いキューをサポートできます。特定のユースケースでは、レイジーキューを使用するブローカーのパフォーマンスがわずかに遅くなる可能性があることに注意してください。これは、メッセージがインメモリキャッシュから配信されるのではなく、ディスクからブローカーに移動されるためです。デプロイモード
単一インスタンス、クラスター
-
max-length:
(ポリシー) – キュー内のメッセージ数に対する制限を設定します。クラスターデプロイでは、この制限が、ブローカーの再起動やメンテナンスウィンドウの後などにキューの同期が一時停止されることを防ぎます。number-of-messages
デプロイモード
クラスター
-
overflow: reject-publish
(ポリシー) – キュー内の数がmax-length
値に達した後、max-length
ポリシーを持つキューが新しいメッセージを拒否するようにします。キューがオーバーフロー状態になった場合にメッセージが失われないようにするには、ブローカーにメッセージを発行するクライアントアプリケーションがパブリッシャー確認を実装する必要があります。パブリッシャー確認の実装の詳細については、RabbitMQ ウェブサイトの「Publisher Confirms」を参照してください。 デプロイモード
クラスター
-
max-queues:
(vhost 制限) – ブローカー内のキューの数に対する制限を設定します。number-of-queues-per-vhost
max-length
ポリシー定義と同様に、クラスターデプロイ内のキュー数の制限は、ブローカーの再起動やメンテナンスウィンドウの後などにキューの同期が一時停止されることを防ぎます。キューを制限すると、キューの維持に過剰なCPU使用量がかかることも防止されます。デプロイモード
単一インスタンス、クラスター
-
max-connections:
(vhost 制限) – ブローカーへのクライアント接続数に対する制限を設定します。推奨される値に従って接続数を制限すると、ブローカーがメモリアラームを発し、操作を一時停止させる原因となり得るブローカーメモリの過剰な使用を防ぎます。number-of-connections-per-vhost
デプロイモード
単一インスタンス、クラスター
推奨されるデフォルト値
注記
max-length
および max-queue
のデフォルト制限は、5 kB の平均メッセージサイズに基づいてテストおよび評価されます。メッセージが 5 kB を大幅に超える場合は、max-length
および max-queue
制限を調整して低くする必要があります。
以下の表には、新しく作成されたブローカーに対するデフォルト制限値がリストされています。Amazon MQ は、ブローカーのインスタンスタイプとデプロイモードに従ってこれらの値を適用します。
インスタンスタイプ | デプロイモード | max-length |
max-queues |
max-connections |
---|---|---|---|---|
t3.micro | 単一インスタンス | 該当なし | 500 | 500 |
m5.large | 単一インスタンス | 該当なし | 20,000 | 4,000 |
クラスター | 8,000,000 | 4,000 | 15,000 | |
m5.xlarge | 単一インスタンス | 該当なし | 30,000 | 8,000 |
クラスター | 9,000,000 | 5,000 | 20,000 | |
m5.2xlarge | 単一インスタンス | 該当なし | 60,000 | 15,000 |
クラスター | 10,000,000 | 6,000 | 40,000 | |
m5.4xlarge | 単一インスタンス | 該当なし | 150,000 | 30,000 |
クラスター | 12,000,000 | 10,000 | 100,000 |