Amazon SQS 標準キュー - Amazon Simple Queue Service

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

Amazon SQS 標準キュー

Amazon SQS は、デフォルトのキュータイプとして標準を提供します。標準キューは、API アクション (SendMessageReceiveMessage、または DeleteMessage) ごとに 1 秒あたりほぼ無制限の API コールをサポートします。標準キューは、少なくとも 1 回のメッセージ配信をサポートします。ただし、ときとして (ほぼ無制限のスループットが可能な高分散アーキテクチャであるために) メッセージの複数のコピーが順不同で配信されることがあります。標準キューは、全般的にメッセージが送信順に配信されるベストエフォート型の順序を提供します。

Amazon SQS コンソールを使用してキューを作成および設定する方法については、「キューの作成 (コンソール)Amazon SQS」を参照してください。Java の例については、「Amazon SQS Java SDK の例」を参照してください。

アプリケーションが、順不同で複数回到達するメッセージを処理できる限りは、多くのシナリオで標準メッセージキューを使用できます。

  • 負荷の高いバックグラウンドの作業からライブユーザーリクエストを分離します – ユーザーはサイズ変更またはエンコード中にメディアをアップロードできます。

  • 複数のワーカーノードにタスクを割り当てます – 大量のクレジットカードの検証リクエストを処理します。

  • 今後の処理のためにメッセージをバッチ処理します – データベースへの複数のエントリの追加をスケジュールします。

標準キューに関連するクォータについては、「キューに関連するクォータ」を参照してください。

標準キューを使用した作業のベストプラクティスについては、「標準および FIFO キューの推奨事項Amazon SQS」を参照してください。

メッセージの順序

標準キューでは、できる限りメッセージの順序を保持しますが、メッセージの複数のコピーが順不同で配信される場合があります。ご使用のシステムで順序の保持が必須の場合は、FIFO (先入れ先出し) キュー を使用するか、各メッセージに順序付け情報を追加して、受信時にメッセージを並べ直せるようにすることをお勧めします。

少なくとも 1 回の配信

Amazon SQS では、冗長性と高可用性を確保するため、メッセージのコピーが複数のサーバーに保存されます。まれではありますが、メッセージを受信または削除するときに、メッセージのコピーが保存されているサーバーの 1 台が使用できない場合があります。

この場合、使用できないサーバーではメッセージのコピーが削除されず、メッセージの受信時に、そのメッセージコピーをもう一度受け取る場合があります。アプリケーションがべき等になるよう設計する必要があります (同じメッセージを繰り返し処理した場合にも悪影響が発生しないように設計する必要があります)。