Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
サーバーレスで実装するイベントドリブンアーキテクチャ
Search
kojikojisan
March 13, 2025
16
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
サーバーレスで実装するイベントドリブンアーキテクチャ
kojikojisan
March 13, 2025
More Decks by kojikojisan
See All by kojikojisan
AIワークショップ仙台-Vol.1
kojikojisan
0
33
AI エージェント開発で見えたエンジニアの役割
kojikojisan
0
220
Amazon Nova understanding models に触れてみた
kojikojisan
0
16
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
940
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
420
The Curse of the Amulet
leimatthew05
2
14k
Prompt Engineering for Job Search
mfonobong
0
410
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
66
57k
Product Roadmaps are Hard
iamctodd
55
12k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Speed Design
sergeychernyshev
33
2k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
390
Practical Orchestrator
shlominoach
191
12k
Transcript
サーバーレスで実装する イベントドリブンアーキテクチャ 兒島 祐輔(KOJIMA Yusuke) 1
2 兒島 祐輔 (KOJIMA Yusuke) 出身:埼玉県 所沢市 趣味:読書 活動:AWS案件支援 生成AI活用
社内DX推進 好きなサービス:EventBridge, Lambda 自己紹介
3 “サーバレス” と “イベントドリブンアーキテクチャ” イベントドリブンアーキテクチャはサーバーレス環境で効果を発揮する • サービス間が疎結合 ⇒ 柔軟な拡張が可能 •
イベント発生時のみ処理を実行 ⇒ 従量課金が最小限
4 ユーザーが商品の注文を完了した際のイメージ イベントドリブンアーキテクチャ(1/3) Users 注文受付 在庫管理 配送管理 売上集計 受注完了 イベント
Users 注文受付 在庫管理 配送管理 顧客通知 リクエスト・レスポンス イベントドリブン
5 注文完了後に新たな処理を追加する際のイメージ イベントドリブンアーキテクチャ(2/3) Users 注文受付 在庫管理 配送管理 顧客通知 受注完了 イベント
顧客分析 Users 注文受付 在庫管理 配送管理 顧客通知 顧客分析 ロジック 修正 リクエスト・レスポンス イベントドリブン
6 イベントドリブンアーキテクチャ(3/3) イベントドリブンアーキテクチャは非同期にイベントを通じて処理を実行するサービス設計 通信モデル 結合度 スケーラビリティ エラーハンドリング データの一貫性 1対1の同期的な通信 1対多の非同期的な通信
比較的強い結合 スケーリングが比較的難しい 直接的なエラー処理が可能 強い一貫性を保ちやすい ほとんど疎結合 各処理が独立してスケーリング エラー処理が複雑になる 最終的一貫性モデルが多い リクエスト・レスポンス イベントドリブン
7 Amazon EventBridge で実現するイベントドリブン Event Event bus Rule Event Event
AWS Cloud SaaS Application Servers Rule Rule Amazon EventBridge Instances AWS CloudTrail AWS Step Functions AWS Lambda Amazon Simple Queue Service (Amazon SQS) サーバーレスなイベントドリブンアーキテクチャ (1/4)
8 AWS Lambda Amazon EventBridge AWS Step Functions Amazon Simple
Notification Service (Amazon SNS) AWS Lambda Instances サーバーレスなイベントドリブンアーキテクチャ (2/4) Amazon EventBridge で実現するイベントドリブン
イベント定義する際は標準仕様 CloudEvents を参考にする 9 { "specversion" : "1.0", "type" :
"com.example.submit_order.opened", "source" : "https://example.com/cloudevents/spec/submit", "subject" : "123", "id" : "A234-1234-1234", "time" : "2018-04-05T17:31:00Z", "comexampleextension1" : "value", "comexampleothervalue" : 5, "datacontenttype" : "application/json", "data" : { "appinfoA" : "abc", "appinfoB" : 123, "appinfoC" : true } } サーバーレスなイベントドリブンアーキテクチャ (3/4)
イベントドリブンアーキテクチャはサーバーレス環境で効果を発揮する • サービス間が疎結合 ⇒ 柔軟な拡張が可能 • イベント発生時のみ処理を実行 ⇒ 従量課金が最小限 10
サーバーレスなイベントドリブンアーキテクチャ (4/4) サーバーレスで設計する際 • その処理は同期処理でなければいけないのか? • その処理はイベントドリブンで表現できないのか? AI 活用が進む今だからこそイベントドリブンアーキテクチャを考える
11 Thank you!