メインコンテンツへ移動
Integrationアプリケーション統合初級CLF-C02SAA-C03

SQS

Amazon Simple Queue Service

処理待ちのメッセージを安全にためるキューサービス。

一言でいうと

処理待ちのメッセージを安全にためるキューサービス。

概要

メッセージキューサービス。処理する側と依頼する側を分離し、非同期処理を安定させる。

主な用途

  • 注文処理の非同期化
  • Lambdaへの処理分散
  • 障害時の再試行バッファ

CLF-C02 試験ポイント

  • キューで疎結合化できる
  • Standard QueueとFIFO Queueがある
  • 可視性タイムアウトを理解する

SAA-C03 試験ポイント

  • デッドレターキューで失敗メッセージを退避する
  • 処理順序が必要ならFIFOを検討する
  • Lambdaトリガーとして利用できる

実際の使いどころ

Amazon SQS は、AWS のフルマネージドなメッセージキューサービスである。メッセージを キューに送信する側(プロデューサー)と受信する側(コンシューマー)を分離することで、 処理を非同期化し、システム全体の疎結合化を実現する。送信側はコンシューマーの稼働 状況を意識せずメッセージを送れ、受信側は自身のペースでメッセージを取り出して処理 できるため、瞬間的な負荷変動に対する緩衝(バッファ)として機能する。SQS には Standard Queue と FIFO Queue の 2 種類があり、Standard は順序保証なし・少なくとも 1 回配信、FIFO は順序保証あり・正確に 1 回処理を提供する。 実務では、注文処理の非同期化、Lambda への処理分散、障害時のリトライバッファ、 ECS タスク間のジョブ受け渡しなどに利用される。可視性タイムアウト(Visibility Timeout)は SQS の重要概念で、コンシューマーがメッセージを取り出してから処理完了 (delete)するまでの間、そのメッセージを他のコンシューマーから見えなくする時間である。 処理がタイムアウト内に完了しなければメッセージは再び可視化され、別のコンシューマー が取り出せる。これにより少なくとも 1 回の処理が保証される代わりに、コンシューマー 側で冪等性(idempotency)を担保する必要がある。 料金はリクエスト数(API 呼び出し回数)に応じた従量課金で、データ転送量は別途課金 される。デッドレターキュー(DLQ)を設定することで、規定回数を超えて処理に失敗した メッセージを別キューに退避し、後続調査に回せる。CLF-C02 では「SQS = メッセージ キューによる疎結合化」という基本概念と、Standard / FIFO の使い分け、可視性タイム アウトが頻出論点となる。

公式ドキュメント

コスト注意点

  • リクエスト数に応じて課金される
  • 長すぎる保持期間は不要データを残す

セキュリティ注意点

  • キュー操作権限を送信・受信で分ける
  • メッセージに秘密情報を直接入れない

関連サービス

関連する比較記事

関連する構成図

この用語には、まだ関連構成図が登録されていません。

タグ

integrationqueuemessaging

最終更新日:2026-06-18