【AWS】SNSとSQSの違い

Amazon SNS

プッシュ型でメッセージ送信を行うサービス。

EメールやSMS、Lambda関数やAmazon SQSを通して、アプリやユーザーにメッセージを配信する。 イベント発生をキックにメッセージ送信を行える。

AWS SQS

プル型のメッセージキューイングサービス。

メッセージキューイングとは、サービスやシステムをメッセージを用いて連携する仕組みのこと。 ポーリング(問い合わせ)を行って、メッセージを受け取る。

うれしいところ

非同期で処理を行うため、トラフィック量が想定できないケースでもさばける。

スタンダードキューとFIFOキュー

スタンダードキュー(標準)でのメッセージ処理順序はベストエフォートであり、かつ2回以上の配信がされることがある。一方でFIFOキューは、先入れ先出し(First In First Out)であり順序通りの処理を行い、配信も厳密に1回となる

可視性タイムアウト

SQSのメッセージを複数のクライアントが受信する際、メッセージを重複して受信してしまう可能性がある。指定時間が経過するまで、メッセージが他のクライアントから見えないようにする。 ※デフォルトは30秒で有効

dev.classmethod.jp