Amazon Simple Queue Service
Overview
Amazon SQSは、フルマネージド型のメッセージキューイングサービス。
Amazon SQSを使うと、キューにメッセージを保存したり、キューからメッセージを取り出して処理ができる。
この仕組みを使うことで、疎結合なシステム間連携を実現できる。
メッセージをキューに格納している送信側のアプリケーションをプロデューサー、メッセージ受信側のアプリケーションをコンシューマーと呼ぶ。
- 送信側のアプリケーション
- プロデューサー
- 受信側のアプリケーション
- コンシューマー
Amazon SQSの特徴
Amazon SQSには次のような特徴がある。
疎結合による耐障害性の向上
メッセージキューイングをシステムに導入すると、アプリケーションコンポーネントが切り離される。
したがって実行や失敗は個別のものとなり、システムの全体的な耐障害性が向上する。
伸縮自在に自動スケーリング可能
メッセージキューイングにフルマネージド型サービスであるAmazon SQSを使用すると、自動的にスケールされるため、運用管理のコストを減らすことができる。
Amazon SQS側でのメッセージの暗号化(SSE)をサポート
Amazon SQS側での暗号化(SSE)をサポートしており、各メッセージの本文に機密情報を含んでいても安全にやり取りできる。
高い可用性を維持できる
キューに保存されたメッセージは単一のリージョンの複数のAZで冗長構成にて配置される。
そのため、失われる心配がなく、設定された保持期間内であればいつでも使用できる。
処理できなかったメッセージの蓄積を防ぐことができる
メッセージが正常に処理されなかった場合に、そのメッセージがデッドレターキューという場所に移動するように設定できる。 処理不可能なメッセージを分離することで、メッセージの滞留を防ぐことができる。
2つのキュータイプが利用できる
アプリケーションの要件に合わせて、標準キューとFIFOキューの2つのタイプから選択し、使用できる。