こんにちは。
私は先日AWS SAA C-03を受験し、合格する事ができました!
その勉強の中で、頻出していたAmazon SQSサービスについて
自分自身の備忘もかねて記事にいたしました。
是非ご覧ください!
Amazon SQSって要は宅配ボックスじゃん!?
Amazon Simple Queue Service(SQS)は、AWSクラウド上で効果的なメッセージングを実現するサービスです。
イメージとしては、サービスとサービスの真ん中で仲介者になってくれて、処理に関する情報等のメッセージを送信したり、保存しておいたりできる機能です。
これは、まさに宅配ボックスに似ているではないか!!
一旦SQSに処理を渡しておけば、渡したい相手側が受け取りたいタイミングで受け取っておくよ〜みたいな感じです笑
という事で、宅配ボックスを例にサービスの流れを書いていきたいと思います!
1. 送りたい荷物が発生する(イベントの生成)
SQSはアプリケーション内で発生したイベントをメッセージとして捉えます。これにより、異なるアプリケーションコンポーネント間での情報伝達が容易になります。
→渡したい荷物ができた!
2. 皆が受け取りやすい段ボールに入れ配送する(メッセージの整形)
SQSが提供するメッセージの整形機能により、異なる形式やプロトコルを持つアプリケーションが共通のメッセージ形式でやり取りできます。これにより、相互運用性が向上します。
→誰もが一律で受け取れるように梱包してあげよう!
3. 宅配ボックスにいれる(メッセージの待機)
SQSのキューは、アプリケーションのスケーラビリティを向上させます。メッセージは順番に処理され、キューが大量のトラフィックにも柔軟に対応できるため、アプリケーションがスムーズに動作します。
→お客さんが今は受け取れないかもしれないから、宅配ボックスにいれよう!
4. 荷物の受け取り(キューからの取り出しと処理)
SQSは冗長な構成を持っており、一度処理されたメッセージが失われることはありません。このため、耐障害性が向上し、アプリケーションが信頼性を保ちます。
→お客さんの任意のタイミングで、宅配ボックスから荷物を受けとる
Amazon SQSのメリット/まとめ
SQSはキューにメッセージを待機させ、分散環境でのスケーラビリティを向上させます。
また、メッセージを複数の場所に保存し、冗長構成を持っています。これにより、サーバーの障害や通信の問題に対してもアプリケーションが頑健に動作します。
人間も、宅配ボックスが無ければ、荷物を受け取れなかったり、荷物が届きそうなタイミングは家にいなきゃいけないとか、考えなきゃいけない事が増えますよね。
その問題を簡単に解決してくれるのがAmazon SQSサービスという事でした!!