はじめに
クローラーを構築する際にLambdaと組み合わせてみたらとても便利だったので知見も合わせて記録しておきます。
SQSとは
Simple Queue Service (SQS)の通りメッセージキューイングサービス
メッセージキューイングとは???
一般にメッセージキューイングでは、送信側のクライアントはメッセージを受信側に直接送るのではなく、キューと呼ぶメッセージの入れ物に渡す。キューは多数のメッセージをためておくことができる。受信側のクライアントは、キューからメッセージを受け取り、処理する。これが基本的な仕組みだ。
気になる料金
- 受信:無料
- 送信:ほぼ無料
- 最初の 1 GB/月 | 無料
- 10 TB まで/月 | $0.140 GB あたり
- ...以下省略
キュー作成画面
各項目説明
- キュー属性
- デフォルト可視性タイムアウト
- 受信(配信)したメッセージが他のサービスから取得出来ない時間(排他制御的なイメージ)
- メッセージ保持期間
- 受信したメッセージの保持期間
- 最大メッセージサイズ
- 配信遅延
- 受信したメッセージの配信を意図的に遅延させることが出来る。
- メッセージ受信待機時間
- デフォルト可視性タイムアウト
- デッドレターキュー設定(一定回数送受信を繰り返した場合にデッドレターキューとして別のキューへ送信してくれる仕組み)
- デッドレターキュー
- 作成したキュー名
- 最大受信数
- リトライ回数
- デッドレターキュー
まとめ
個人的にはデッドレターキューがとても便利でリトライ処理書かなくていいし、エラーとなったキューも保持期間設定して勝手に削除されるので運用も楽ちんになりました