0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【SAS対策】Amazon SQSについてまとめてみた

Posted at

SAS取得を目指して勉強中です。
学習の中で学んだことをせっかくなのでまとめておこうと思います。

SQSとは

  • マネージド型のメッセージキューイングサービス、
    プロデューサーから送信されたメッセージをSQSに貯め、
    コンシューマーはSQSにメッセージを取りにいく
  • アプリケーションの分離に貢献するサービス
  • コンシューマーに「EC2」「Lambda」などを指定でき
    SQSにポーリングを行う

ポーリング

  • ショートポーリング
    • メッセージ取得リクエストされた際、
      メッセージがなくてもすぐレスポンスを返却
    • APIコール数が多くなる
  • ロングポーリング
    • メッセージ取得リクエストされた際、
      メッセージが届くまで最大20秒待機

可視性タイムアウト

  • コンシューマーによってポーリングされた後、
    他のコンシューマーが受信できない時間のこと
  • デフォルト30秒
  • 可視性タイムアウト内にメッセージ処理に失敗した場合、
    メッセージはキューに戻る

デッドレターキュー

  • 処理失敗などでメッセージがキューに戻る回数が
    ある閾値を超えた場合、デッドレターキューに送ることができる
  • キューAでデッドレターキューを設定したい場合、
    キューBを新たに作成しデッドレターキューに設定する

遅延キュー/メッセージタイマー

  • 遅延キュー
    • プロデューサーがSQSに送信したメッセージを
      コンシューマーが一定時間アクセスできないようにする機能
    • すべてのメッセージが対象
  • メッセージタイマー
    • プロデューサーがSQSに送信したメッセージを
      コンシューマーが一定時間アクセスできないようにする機能
    • 特定のメッセージが対象

キューの種類

  • スタンダードキュー(標準キュー)
    • 送信順序が保証されない
    • 重複送信がまれに発生
    • 256KBまで
    • 安価
  • FIFOキュー
    • 送信順序が保証されている
    • 重複して受信することはない
    • スループット上限あり

リクエスト/レスポンス形式の実現

  • SQSは単方向の通信しかできないが、
    SQS Temporary Queue Clientを使うことで
    リクエスト、レスポンスの形を実現できる
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?