Amazon Simple Queue Serviceを略してSQSです。プロセス間通信などのスレッド間通信に使われるコンポーネントで制御やデータを伝達するポーリング型キューサービスです。
目次
SQSの特徴
フルマネージド型で提供され、高可用性・高スケーラビリティ・高スループット・低コストを実現
- 複数のサーバ/データセンターにメッセージを保持する高可用性構成
- 多数の送信者と受信者に対応可能なスケーラビリティの確保
- メッセージが増加しても高スループットを維持できる
- 無料枠と従量課金による低コスト
基本的には256KBまでの軽いデータしか利用できず、60秒から14日間メッセージを保持する
- メッセージの最大サイズは256KB
- Extended Client Libraryを利用すると、2GBまでのメッセージの送受信が可能
- 削除されないメッセージはデフォルトで4日間保持
- 保持期間は60秒から14日の間で変更可能
- 1つのキュー毎に最大120,000 In Flight(受信されたメッセージ&Visibility Timeout内)メッセージ
キューのタイプ
SQSのキューメッセージの処理順序は2つの方式から選択します。
標準キュー
- 標準キューは「順番通りに処理」と「1回だけのメッセージング」を”なるべく”実施する処理
- 同じメッセージを複数回受信する可能性あり。少なくとも1回の配信
FIFOキュー
- その名の通り最初に入ったキューを最初に処理する順番を守るキューイングを実施
SQSの機能
追加機能を利用することでキューイング処理を工夫することができる
Short Poling
- キューが空の場合でも即時にリターンする
Long Poling
キューが空の場合はタイムアウトまで待つ
デッドレターキュー
ずっと残ったメッセージを別キューに移動し、正常に処理できなかったメッセージを隔離できる
Visibility timeout
新しいメッセージを指定時間見えなくする。VisibilityTimeoutを設定することで、優先的に処理して欲しい受信インスタンスを指定することが可能
次は「【AWS資格】SNSの概要」です。
【AWS資格】SNSの概要 SNS(Amazon Simple Notification)とは、フルマネージド型のプッシュ型通知サービスで他のサービスとの非同期通信を可能にします。送信側がトピックを作成して受信側がポ…
前回は「【AWS資格】疎結合化の追求」です。
【AWS資格】疎結合化の追求 コンポーネント間の相互依存を減らした構成にすることで、1つのコンポーネント変更や障害の影響を減らすことが出来ます。関連する主なサービスは「Lambda」「SQS」「EL…
リンク
コメント