AWS
公式 Webinar
https://amzn.to/JPWebinar
過去資料
https://amzn.to/JPArchive
シニアソリューションアーキテクト
福井 厚
サーバーレス イベント駆動アーキテクチャ
サービスカットシリーズ
AWS Black Belt Online Seminar とは
「サービス別」「ソリューション別」「業種別」のそれぞれのテーマに分かれて、アマゾ
ン ウェブ サービス ジャパン株式会社が主催するオンラインセミナーシリーズです。
質問を投げることができます!
•
書き込んだ質問は、主催者にしか見えません
•
今後のロードマップに関するご質問は
お答えできませんのでご了承下さい
① 吹き出しをクリック
② 質問を入力
③ Sendをクリック
ハッシュタグは以下をご利用ください
#awsblackbelt
内容についての注意点
•
本資料では2020年6月10日現在のサービス内容および価格についてご説明しています。最新の情
報はAWS公式ウェブサイト(http://aws.amazon.com)にて、ご確認ください。
•
資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格に相違
があった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。
•
価格は税抜表記となっています。日本居住者のお客様には別途消費税をご請求させていただきま
す。
•
AWS does not offer binding price quotes. AWS pricing is publicly available and is subject
to change in accordance with the AWS Customer Agreement available at
http://aws.amazon.com/agreement/. Any pricing information included in this document
is provided only as an estimate of usage charges for AWS services based on certain
information that you have provided. Monthly charges will be based on your actual use of
AWS services, and may vary from the estimates provided.
自己紹介
名前
福井 厚(ふくい あつし)fatsushi@
所属
アマゾン ウェブ サービス ジャパン株式会社
技術統括本部レディネスソリューション本部
シニアソリューションアーキテクト
サーバーレス スペシャリスト
関心領域
ソフトウェア アーキテクチャ、オブジェクト指向設計、アジャイル開発
好きなAWSサービス
Agenda
•
なぜイベント駆動なのか
•
イベント駆動アーキテクチャ
•
AWSソリューションの概要と選択ガイド
政府
金融
出版
教育
製造業
メディアとエンターテイメント
流通
ヘルスケア
公共サービス
証券や入出金処理
ドキュメントのキャプチャ、
発行、検索
学習と支援
多段階の生産プロセス
ソーシャルメディア、ゲーム、
イメージ、ビデオ処理
注文処理と管理
重要なデータ交換
イベント駆動アーキテクチャは重要なビジネスシステム
で利用されている
EM
IS
ES
On-premise message broker
CL
O
U
D
/
M
ICR
O
SE
R
V
ICE
AWS native messaging
ハイスケーラビリティ、信頼性、
疎結合
Event driven
architectures
- 費用 (設備投資、事業運営費)
- 特別なスキルセット
- メンテナンスと管理
- スケールするのが難しい
AWS managed message broker
コスト削減、運用の効率化、 可用性
自動化とイノベーション
メッセージとイベントの進化
Born In Cloud | Micro-Services
Cloud Migration & Modernization
Hybrid & Multi-Cloud
SaaS Integrations
AWS
3
rd
最終ゴールは
信頼性
弾力性
顧客価値
スケーラビリティ
そして迅速に
event
[i-’vent]
名詞
システムの状態が変更された
ことを示すシグナル
イベントとは
•
イベントは、
状態の変化に対してサービス間で情報を共有
するための主要な
メカニズムになる
•
イミュータブル
– 過去は変更できない
•
イベントはセマンティックな意図を持つ、
過去時制の動詞
として表現される、
例: “customer_created”
•
ライトウェイト
、”customer_id”のようなドメインで共通のプロパティに
よって関連付けられる
イベントは観察可能であり、指示ではない
コマンドの指示
請求書を
発行して
ください。
承知
しました
イベントの観察
Xさんが今
小物を注文
しました
請求書を
送ります
セールスレポート
に追加します。
分散システムにおける課題
複数のエラーポイント
サービス品質の程度のばらつき
外部への依存
プロデューサとコンシューマの間の結合
プロデューサ
コンシューマ
イベントルーターによる疎結合サービス
プロデューサとコンシューマ
非同期化による応答性の改善と依存性の削減
同期コマンド
Client
Service A
Service B
非同期イベント
イベントストアによる弾力性の改善とスケーラビリティ
サービスが処理するまでメッセージ
をバッファリング
Push event
Event store
Pull event
Business
logic
イベントストアをメッセージとストリームに適用
メッセージ処理
•
個々の
メッセージはアトミックな処理として扱う
•
メッセージごとに計算/処理を実施
•
メッセージの発生タイミングは様々
•
メッセージは消費された後に削除される
•
ポジションを追跡する必要はない
•
組み込みのDLQ機能
ストリーム処理
•
メッセージの
ストリームは一連の動作として扱う
•
多くのメッセージに対する複雑な計算
•
メッセージのストリームは一定
•
メッセージは消費された後も期限切れまで有効
•
ストリーム内の
現在のポジション
を個々の
クライアントが
追跡
する必要がある
AWSのメッセージングとイベントサービス
イベントストア
イベントルーター
キュー
ストリーム
トピック
イベントバス
AWS
ネイティブ
マネージド
オープンソース
Amazon SQS
Amazon MQ
Amazon SNS
Amazon MQ
Amazon Kinesis
Amazon MSK
Amazon EventBridge
Born In Cloud | Micro-Services
Cloud Migration & Modernization
Hybrid & Multi-Cloud
SaaS Integrations
AWS
3
rd
Born In Cloud | Micro-Services
Cloud Migration & Modernization
Hybrid & Multi-Cloud
SaaS Integrations
AWS
Amazon
Simple Queue Service
マイクロサービス、分散システム、サーバーレスアプリケーションのための
フルマネージドなメッセージキュー
Amazon Simple Queue Service (SQS)
SQSは
シンプル、フレキシブル、
フルマネージドな信頼性の
高いメッセージキュー
サービス。様々な
ボリュームのメッセージを
どこからでも継続的に交換
Standard
と
FIFO
の2つの
タイプを提供
ユースケース
疎結合で、
スケーラブル
な
マイクロサービス
、
分散システム、サーバー
レスアプリケーション
を
クラウド上に構築する場
合に適用
優れた機能
事前のプロビジョニングを
必要としない、
標準キュー
は
ぼぼ
無制限なスケーラビ
リティを提供
Amazon SQSによるハイボリュームなビッグデータ処理
AWS Cloud
Amazon S3
AWS Lambda
Amazon SQS
AWS Lambda
Amazon SNS
Amazon SQS
AWS Lambda
Amazon SQS
AWS Lambda
Amazon SQS
AWS Lambda
Dead Letter Queue
File
Create/Upload
Trigger
Sending
Amazon
Simple Notification Service
マイクロサービス、分散システム、サーバーレスアプリケーションのための
フルマネージドなPub/Subメッセージング
Amazon Simple Notification Service (SNS)
Amazon SNSは
シンプルでフレキシブルな、フル
マネージドの
publish/subscribe
メッセージング
と高スループット
で信頼性の高いメッセージ配信を
行うための
モバイルプッシュ通知
も提供するサービス
ユースケース
•
複数のサブスクライブしてい
るアプリケーションへの
通知
•
リージョンをまたがったデー
タの
レプリケーション
•
ワークロードの複数ステップ
の
実行
•
並列
プロセス
•
サーバーレス起動の
トリガー
• Amazon SQS
との組み合わせ
で
ファンアウト
優れた機能
複数のプロトコルにまたがった
多くの受信者へ
の
高い信頼性
の
メッセージ配信
イベントをトピックにマッピング
Amazon SNS “US
Orders”
Topic
Amazon SQS “US
Orders” Queue
Publisher
AWS Lambda
Amazon SNS SubscriptionAmazon SNS “EU
Orders”
Topic
Amazon SQS “EU
Orders” Queue
AWS Lambda
Amazon SNS Subscription