

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

# Amazon SQS キュータイプ
<a name="sqs-queue-types"></a>

Amazon SQS は、[**標準キュー**](standard-queues.md)と [**FIFO**](sqs-fifo-queues.md) キューの 2 種類のキューをサポートしています。次の表を使用して、ニーズに最適なキューを決定します。


| 標準キュー | FIFO キュー | 
| --- | --- | 
|  **無制限のスループット** – 標準キューは、アクション ([https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html)、[https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html)、または[https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessage.html)) ごとに 1 秒あたり非常に多くの、ほぼ無制限の API コール数をサポートします。この高スループットにより、リアルタイムデータストリーミングや大規模なアプリケーションなど、大量のメッセージをすばやく処理する必要があるユースケースに最適です。標準キューは需要に応じて自動的にスケールしますが、特にワークロードの高いリージョンでは、最適なパフォーマンスを確保するために使用パターンをモニタリングすることが重要です。 **At-least once 配信** — 少なくとも 1 回の配信が保証されます。つまり、すべてのメッセージは少なくとも 1 回配信されますが、再試行やネットワーク遅延が原因で 2 回以上配信される場合もあります。同じメッセージを複数回処理してもシステムの状態に影響が及ばないように、べき等性オペレーションを使用して重複メッセージに対応できるようにアプリケーションを設計する必要があります。 **ベストエフォート型の順序** – ベストエフォート型の順序を提供します。つまり、Amazon SQS はメッセージを送信された順に配信しようとしますが、これは保証されません。場合によっては、特に高スループットまたは障害復旧の条件下では、メッセージが順序どおりに到着しないことがあります。メッセージ処理の順序が重要であるアプリケーションの場合、アプリケーション内で順序変更ロジックを処理するか、FIFO キューを使用して順序を厳密に保証する必要があります。 **耐久性と冗長**性 – 標準キューは、各メッセージの複数のコピーを複数の AWS アベイラビリティーゾーンに格納することで、高い耐久性を確保します。これにより、インフラストラクチャに障害が発生しても、メッセージは失われません。 **可視性タイムアウト** – Amazon SQS では、可視性タイムアウトを設定してメッセージを受信後に非表示にしておく期間を制御できます。これにより、メッセージを完全に処理するか、タイムアウトが期限切れになるまで、他のコンシューマーがメッセージを処理することはありません。  | **高スループット** — [バッチ処理](sqs-batch-api-actions.md)を使用すると、FIFO キューは API メソッド（[https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html)、[https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ReceiveMessage.html)、または [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html)) ごとに 1 秒あたり最大 3,000 件のメッセージを処理します。このスループットでは 1 秒あたりの API コール数を 300 とし、各 API コールで 10 件のメッセージをバッチで処理します。高スループットモードを有効にすると、メッセージグループ内の順序範囲を広げて 1 秒あたりのトランザクション数 (TPS) を最大 30,000 までスケールアップできます。バッチ処理を使用しない場合、FIFO キューは、API メソッド (`SendMessage`、`ReceiveMessage`、または `DeleteMessage`) ごとに 1 秒あたり最大 300 件の API コールをサポートします。さらにスループットが必要な場合は、[AWS サポートセンター](https://console.aws.amazon.com/support/home#/case/create?issueType=service-limit-increase&limitType=service-code-sqs)にクォータの引き上げをリクエストできます。高スループットモードを有効にするには、「[Amazon SQS における FIFO キューの高スループットの有効化](enable-high-throughput-fifo.md)」を参照してください。 **1 回のみ処理** — FIFO キューは各メッセージを 1 回配信し、処理して削除するまで、そのメッセージを利用可能にします。[https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html) やコンテンツベースの重複排除などの機能を使用することで、ネットワークの問題やタイムアウトが原因で再試行した場合でも、メッセージの重複を防ぐことができます。 **FIFO 配信** – FIFO キューでは、各メッセージグループ内のメッセージを送信した順序どおりに取り出します。メッセージを複数のグループに分散することで、各グループ内の順序を維持しながら、メッセージを並列処理できます。  | 
|  ![\[標準キューのメッセージ配信。\]](http://docs.aws.amazon.com/ja_jp/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-what-is-sqs-standard-queue-diagram.png)  |  ![\[FIFO キューのメッセージ配信。\]](http://docs.aws.amazon.com/ja_jp/AWSSimpleQueueService/latest/SQSDeveloperGuide/images/sqs-what-is-sqs-fifo-queue-diagram.png)  | 
| 標準キューは、スループットが重要であるアプリケーション間でのデータ送信に使用します。以下に例を示します。[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-types.html) |  FIFO キューは、イベントの順序が重要であるアプリケーション間でのデータ送信に使用します。以下に例を示します。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-types.html)  | 