Amazon SQS での FIFO スロットリングの問題のトラブルシューティング - Amazon Simple Queue Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon SQS での FIFO スロットリングの問題のトラブルシューティング

デフォルトでは、FIFO キューは、、、および の API アクションごとに 1 秒あたり 300 SendMessage件のトランザクションをサポートしますReceiveMessageDeleteMessage。キュー内のメッセージが利用可能な場合でも、300 TPS を超えるリクエストはThrottlingExceptionエラーを受け取ります。これを軽減するには、次の方法を使用できます。

  • Amazon SQS で FIFO キューの高スループットを有効にする.

  • Amazon SQS API バッチアクション SendMessageBatchDeleteMessageBatch、および ChangeMessageVisibilityBatchを使用して、API アクションごとに 1 秒あたり最大 3,000 メッセージという TPS 制限を引き上げ、コストを削減します。ReceiveMessage API の場合、トランザクションごとに最大 10 個のメッセージを受信するように MaxNumberofMessagesパラメータを設定します。詳細については、「Amazon SQSのバッチアクション」を参照してください。

  • スループットの高い FIFO キューの場合は、推奨事項に従ってパーティション使用率を最適化します。同じメッセージグループ IDsで送信します。メッセージを削除するか、同じ ReceiveMessage API リクエストからの受信ハンドルを使用してメッセージの可視性タイムアウト値をバッチで変更します。

  • 一意のMessageGroupId値の数を増やします。これにより、FIFO キューパーティション間で均等に分散できます。詳細については、「Amazon SQSメッセージグループ ID の使用」を参照してください。

詳細については、「 ナレッジセンターガイド」のAmazon SQS FIFO キューが他のメッセージグループ内のすべてのメッセージまたはメッセージを返さないのはなぜですか?」を参照してください。 AWS