Amazon Web Services ブログ

[AWS Black Belt Online Seminar] サーバーレス イベント駆動アーキテクチャ 資料及び QA 公開

先日 (2020/06/10) 開催しました AWS Black Belt Online Seminar「サーバーレス イベント駆動アーキテクチャ」の資料を公開しました。当日、参加者の皆様から頂いた QA の一部についても共有しております。

20200610 AWS Black Belt Online Seminar サーバーレスイベント駆動アーキテクチャ

AWS クラウドサービス活用資料集(すべての過去資料が閲覧できます)

Q. オーダーサービスの例をとると、非同期になったことにより在庫が結果としてなかったなどの応答はどうやってクライアントに通知するべきでしょうか?
A. このような場合に備えて補償トランザクションを定義します。具体的には注文を受け付けた時点では即座に注文を受け付けた状態としてクライアント側に応答しますが、在庫確認処理で在庫が無かった場合、後から在庫が無かったので注文がキャンセル(または入荷するまで処理をペンディング)される旨をメールで伝えるなどの処理を行うことになります。補償トランザクションはビジネスと密接に関わるため、関連するステークホルダーと協議して決めることになるでしょう。

Q. 福井さんの Black Belt でサーバーレスパターンの解説をしてほしいです。
A. リクエストありがとうございます。前向きに検討させて頂きます。

Q. SQS とSNS はどう使い分けるのでしょうか?過去事例では SQS + SNS を組み合わせるケースが多いように思いますが、組わせるメリットは何でしょうか?
A. SNS はパブリッシュ(発行) / サブスクライブ( 購買)パターンを実現するサービスで、このパターンのメリットは発行者が購買者に対する知識を持つ必要がなく、発行者の実装に影響を与えることなく特定のトピックに関心がある購買者を自由に追加できる点にあります。さらに SNS には AWS Lambda、Amazon SQS、HTTP/S、Email、SMS に対してノンコーディングで信頼性の高い接続が構築できるというメリットもあります。一方 Amazon SQS はイベントストアとしての機能を提供することでメッセージの送信者が受信者の受信タイミングに影響を受けることなく信頼性の高いメッセージによる通知を行うことができます。また Amazon SQS はFIFO キューも提供しており、メッセージの順序性も担保することができます。このような特長を踏まえてアプリケーションの要件に合ったサービスを選択することになります。また組み合わせることによるメリットですが、例えば一つのイベントから複数の処理を並列に実行したい場合(ファンアウトと言います)、Amazon SN Sを利用してファンアウトを実現し、トピックの購買先として Amazon SQS を組み合わせることにより Amazon SQS のキューに入ったメッセージを処理することによって、エラーの発生によよるメッセージをロストがない信頼性の高い処理を実現することが出来ます。

Q. AWS サービスからの通知を受けてその次の何かをする機能としては CloudWatch イベントルールのイベントパターンが存在しますが、それと EventBridge は何が違いますか?
A. AWS サービスからの通知を受けてデフォルトイベントバスのイベントルールを利用する場合、従来の Amazon CloudWatch イベントと違いはありません。Amazon EventBridge は、これまでの Amazon CloudWatch イベントにSaaSサービスとの連携、カスタムアプリケーションのカスタムイベントのサポートなどが追加されたサービスです。

Q. 特定の AWS サービスから別のAWSサービスにイベントを送信したい場合、イベントルーティングには SNS と EventBridge、どちらを使うのが適切なのでしょうか?多くの場合 SNS、EventBridge どちらでも受け取れそうに見受けられますので、どちらを選ぶのが適切なのかご教示いただけますと幸いです。
A. 基本的には要件に応じて使い分けることになります。イベント送信のきっかけが事前定義されたイベントスキーマが目的の用途にマッチする場合は、Amazon EventBridge を利用します。一方トピックメッセージの内容によってをファンアウトして AWS サービスにイベントを送信する場合、Amazon SNS は AWS Lambda とAmazon SQS をサブスクライバにすることができます。Amazon EventBridge では AWS Lambda、Amazon SQS を含むその他いくつかの AWS サービスをターゲットにすることができます。詳細はこちらをご参照ください。

今後の AWS Webinar | イベントスケジュール

直近で以下を予定しています。各詳細およびお申し込み先は下記URLからご確認いただけます。皆様のご参加をお待ちしております。

AWSome Day Online Conference

「AWSome Day Online」は、AWSの主要サービスや基礎知識を約 2.5 時間という短い時間で、ポイントを押さえて紹介いたします。技術的な面だけではなく、AWS クラウドを学ぶために必要となる知識を身に付けたい方、エンジニアのみならず、営業職、プリセールス職、学生まで幅広い方々におすすめします。

※2020年は毎月第一水曜日に開催します。

日時:2020 年 7 月 1 日(水) 15:00 – 17:40 終了予定 | 詳細・お申込みについてはこちら≫

Amazon WorkSpacesとChromebookで実現する Windowsデスクトップ仮想化
本セミナーでは、クラウド型デスクトップのAmazon WorkSpacesとChromebookデバイスの相性の良さ、またMS OfficeからG Suiteへの移行方法について解説します。

日時: 2020 年 7 月 9 日(木)14:00 – 16:00 | 詳細・お申込みについてはこちら≫

AWS Black Belt Online Seminar

7 月の予定が新規公開されました。配信当日は Q&A ができます。参加された方だけの特権です。6 月のアジェンダとともにぜひご登録・ご視聴ください。

6 月分の詳細・お申込はこちら≫

  • 6/23(火)12:00-13:00 Amazon Elasticsearch Service
  • 6/24(水)18:00-19:00 Container Service Update
  • 6/30(火)12:00-13:00 Amazon Cognito

7 月分の詳細・お申込はこちら≫

  • 7/7(火)12:00-13:00 Amazon EC2 Deep Dive: AWS Graviton2 Arm CPU搭載インスタンス
  • 7/14(火)12:00-13:00 Amazon Neptune
  • 7/15(水)18:00-19:00 Amazon Detective
  • 7/21(火)12:00-13:00 AWS App Mesh
  • 7/22(水)18:00-19:00 AWSアカウント シングルサインオンの設計と運用
  • 7/28(火)12:00-13:00 What’s New in Serverless
  • 7/29(水)18:00-19:00 Amazon Redshift Advanced Guide −最新ベストプラクティスとアップデート