SNS
Simple Notification Service。
フルマネージド型のプッシュ型通知サービス。
SNSはどう言うもの?
TOPICを作成して、どういう受信側に送るのかというpolicyを指定することによって、
特定の通信内容を受信側に送る。
特徴
AWSの他のサービスと連携して、疎結合化が可能。
Ref:https://aws.amazon.com/cn/sns/features/
標準トピック
1回以上受信され順番付けされていないメッセージをアプリケーションが処理できるのであれば、
多くのシナリオで使用することができます。
FIFO トピック
オペレーションやイベントの順番が重要であったり、
重複を許容しないようなアプリケーション間で行うメッセージングを、
強化するために設計されています。
SQS Vs. SNS
Ref:https://medium.com/awesome-cloud/aws-difference-between-sqs-and-sns-61a397bf76c5
◯エンティティタイプ
SQS:キュー
SNS:トピック
◯Message consumption
SQS :プル型(受信側はSQSにてメッセージを引っ張る)
SNS :プッシュ型( SNSはメッセージを受信側に送る)
◯ユーケース
SQS :二つのアプリを疎結合。非同期処理を許す。
SNS :同じメッセージを複数の方法で処理できる。
◯永続性
SQS:永続性あり。
SNS:永続性なし。
メッセージの到着時にどちらのコンシューマーが存在していたとしても、メッセージを取得すると、メッセージは削除される。利用可能なコンシューマーがない場合、メッセージは失う。
※SQSではメッセージ配信は保証されるが、SNSでは保証されていない。
◯消費者タイプ
SQS:すべてのコンシューマーは同一であると想定されているため、メッセージをまったく同じ方法で処理する。
SNS:すべての消費者は(想定される)さまざまな方法でメッセージを処理する。