疎結合アーキテクチャの設計 SQS と SNS と EventBridge の使い分け
本記事はSAAを目指す方向けに、コンポーネントを疎結合にして耐障害性とスケーラビリティを高める設計を解説します。試験では「この連携要件に合うメッセージングを選ぶ」力が問われます。
覚え方のフレームは3つの観点です。1対1か1対多か・プッシュかプルか・ルーティングの柔軟さ。
Amazon SQS 処理の緩衝(バッファ)
SQSはキューにメッセージを溜め、コンシューマがプルで取り出します。急なトラフィック増を吸収し、処理落ちを防ぎたい要件で選びます。例えば注文の急増をキューで受け止め、後続の処理を安定して進められます。
Amazon SNS 一斉通知(ファンアウト)
SNSは1つのメッセージを複数の購読先へプッシュ配信します。1つのイベントを複数システムへ同時通知したい要件で選びます。SNSとSQSを組み合わせるファンアウト構成が定番です。
Amazon EventBridge イベント駆動の中核
EventBridgeはイベントの内容に応じてルールベースに配信先を振り分けます。SaaSやAWSサービスのイベントを条件で振り分けたい要件で選びます。
| サービス | 配信 | モデル | 使いどころ |
|---|---|---|---|
| SQS | 1対1 | プル | 処理のバッファリング |
| SNS | 1対多 | プッシュ | 一斉通知・ファンアウト |
| EventBridge | 1対多 | プッシュ | 条件によるルーティング |
試験ポイント SQS標準キューは配信順序を保証せず、重複配信もあり得ます。厳密な順序と重複排除が必要ならFIFOキューを選ぶ点が頻出です。
チェックリスト
- SQSでトラフィックを吸収する設計ができる
- SNSとSQSのファンアウトを説明できる
- EventBridgeの条件ルーティングを活用できる
- 標準キューとFIFOキューを要件で選べる
まとめ
疎結合は「1対多か・プッシュかプルか・ルーティング」で捉え、緩衝はSQS、一斉通知はSNS、条件振り分けはEventBridgeが基本です。この記事の理解度はクイズで確認し、最新の試験範囲はAWS認定 公式ページで確認しましょう。
SAA(ソリューションアーキテクト アソシエイト) におすすめの教材
書籍
徹底攻略 AWS認定 ソリューションアーキテクト − アソシエイト教科書 第3版[SAA-C03]対応
問題集
AWS認定ソリューションアーキテクト−アソシエイト問題集
Udemy・講座
これだけでOK! AWS認定SAA(SAA-C03)試験突破講座
Udemy・模試
AWS認定SAA 本番模試(6回分/390問)
本セクションにはAmazonアソシエイト・Udemyアフィリエイトのリンクが含まれます。