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
CQRS+ES の力を使って効果を感じる / Feel the effects of usi...
Search
shiro seike
PRO
December 21, 2024
Programming
0
340
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
CQRS+ESカンファレンス
https://cqrs-es-con.connpass.com/event/333271
shiro seike
PRO
December 21, 2024
Tweet
Share
More Decks by shiro seike
See All by shiro seike
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
850
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
430
地方のPHPerもクラウドを使う理由 ~コストの最適化とチームに向き合う~ / Why even local PHPers use the cloud ~optimize costs and face the team
seike460
PRO
0
72
OpenTelemetryで始めるベンダーフリーなobservability / Vendor-free observability starting with OpenTelemetry
seike460
PRO
0
200
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
2
1.2k
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
1
750
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
400
実行委員長が振り返るBacklogWorldの裏側と運営Backlog術 / The chairperson of the executive committee looks back on the backstage of BacklogWorld and the art of managing Backlog.
seike460
PRO
0
13
Amazon Aurora DSQLパフォーマンスチェック / Amazon Aurora DSQL Performance Check
seike460
PRO
0
23
Other Decks in Programming
See All in Programming
AIでLINEスタンプを作ってみた
eycjur
1
230
Testing Trophyは叫ばない
toms74209200
0
890
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
320
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
540
Namespace and Its Future
tagomoris
6
710
為你自己學 Python - 冷知識篇
eddie
1
350
Deep Dive into Kotlin Flow
jmatsu
1
370
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
Cache Me If You Can
ryunen344
2
4k
AWS発のAIエディタKiroを使ってみた
iriikeita
1
190
デザイナーが Androidエンジニアに 挑戦してみた
874wokiite
0
550
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
570
Featured
See All Featured
Building Applications with DynamoDB
mza
96
6.6k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Context Engineering - Making Every Token Count
addyosmani
3
62
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Transcript
©Fusic Co., Ltd. 1 CQRS+ES ͷྗΛͬͯΈͯޮՌΛײ じ Δ 2024.12.21 @seike460
CQRS+ESΧϯϑΝϨϯε
©Fusic Co., Ltd. 2 ਗ਼Ո ࢙ @seike460 AWS Community Builder
Serverless AWS User Group Leaders Community Organizer ɹFukuoka.php ɹFukuoka.go ɹJAWS-UG Fukuoka ɹServerless Meetup Fukuoka ɹCloudflare Meetup Fukuoka ɹJP_Stripes Fukuoka ࣗݾհ ͡Ίʹ גࣜձࣾFusic ϓϦϯγύϧΤϯδχΞ/ΤόϯδΣϦετ
©Fusic Co., Ltd. 3 CONTENTS ࣍ 1. CQRS + ES
2. ࣮ԋͷߏ 3. σϞ 4. ·ͱΊ
©Fusic Co., Ltd. 4 CQRS + ES 1
©Fusic Co., Ltd. 5 CQRS + Event Sourcing CQRSͱ Event
Sourcingͷϓϩͷํ͍Βͬ͠Ό͍·͕͢ɺ ͦ͏Ͱͳ͍ํ͍Βͬ͠ΌΔͱࢥ͍·͢ ͜ΕΒͷΞʔΩςΫνϟʮঢ়ଶཧʯͱʮཤྺཧʯΛ͠ ಛʹॻ͖ࠐΈͱಡΈऔΓͷׂΛ໌֬ʹ͚Δͷ͕ಛ
©Fusic Co., Ltd. 6 େنΞʔΩςΫνϟͱ͍͏Πϝʔδ ࣮ࡍ2018ʹग़ձ͍ͬͯΔͷͰ͕͢ɺ ͜ͷ͕࣌ࢥͬͨͷ͕ʮେنͳΞʔΩςΫνϟಛԽʯͱ͍͏Πϝʔδ ʮͷਓੜͰ৮Δ͜ͱͳͦ͞͏ʯͱࢥͬͨͷ͕ਖ਼ͳͱ͜ΖͰ͢
©Fusic Co., Ltd. 7 PHPͰΞΫλʔϞσϧ ҰํͰઌPHPΧϯϑΝϨϯεԭೄ2024ʹͯytake͞Μͱͯ͠ ڧʹিܸΛड͚ͯɺڵຯΛ࣋ͪ·ͨ͠
©Fusic Co., Ltd. 8 AWS LambdaΛத৺ʹݕূͯ͠ΈΔ Ͱʮཧͱͯ͠ྑͦ͞͏͚ͩͲɺϓϩδΣΫτͰຊʹ͑Δͷ͔ʁʯ ʮϝϦοτΛͪΌΜͱମݧͯ͠ಋೖ͍ͨ͠ʯ ͦ͜ͰࠓճҰൠతʹؾܰʹࢼ͍͢͠AWS Lambdaͷ۩ମతͳߏΛྫʹɺ
ͦͷϝϦοτΛ࣮ԋɺମݧͯ͠ΈΑ͏ͱࢥ͍·͢
©Fusic Co., Ltd. 9 ߏ 2
©Fusic Co., Ltd. 10 AWS Lambda + DynamoDBͷγϯϓϧͳҰཡ - ৄࡉ
©Fusic Co., Ltd. 11 AWS Lambda + DynamoDBͷγϯϓϧͳҰཡ - ৄࡉ
ͳΜͱઌఔɺ͔ͱ͡ΎΜ͞Μ͔ΒͷະདྷͷϑΟʔυόοΫ͕͋Γ·ͨ͠ʂ Ұ୴ͬͯΈͨͷͱͯ͠ѻ͍ͬͯͩ͘͞ʂ
©Fusic Co., Ltd. 12 AWS Lambda + DynamoDBͷγϯϓϧͳҰཡ - ৄࡉ
ᶃAPIʹରͯ͠σʔλొ
©Fusic Co., Ltd. 13 AWS Lambda + DynamoDBͷγϯϓϧͳҰཡ - ৄࡉ
ᶃAPIʹରͯ͠σʔλొ ᶄAWS Lambda͕EventTableʹσʔλొ
©Fusic Co., Ltd. 14 AWS Lambda + DynamoDBͷγϯϓϧͳҰཡ - ৄࡉ
ᶃAPIʹରͯ͠σʔλొ ᶄAWS Lambda͕EventTableʹσʔλొ ᶅDynamoDB DataStreame͕AWS LambdaΛىಈ
©Fusic Co., Ltd. 15 AWS Lambda + DynamoDBͷγϯϓϧͳҰཡ - ৄࡉ
ᶃAPIʹରͯ͠σʔλొ ᶄAWS Lambda͕EventTableʹσʔλొ ᶅDynamoDB DataStreame͕AWS LambdaΛىಈ ᶆUserSummaryͱUserDetailͷಡΈऔΓ༻ʹׂ
©Fusic Co., Ltd. 16 AWS Lambda + DynamoDBͷγϯϓϧͳҰཡ - ৄࡉ
ᶃAPIʹରͯ͠σʔλొ ᶄAWS Lambda͕EventTableʹσʔλొ ᶅDynamoDB DataStreame͕AWS LambdaΛىಈ ᶆUserSummaryͱUserDetailͷಡΈऔΓ༻ʹׂ ᶇͦΕͧΕͷAPI͕ಡΈऔΓσʔλΛఏڙ
©Fusic Co., Ltd. 17 EC2͔ΒlocustʢෛՙπʔϧʣΛىಈͯ͠ෛՙΛ͔͚Δ
©Fusic Co., Ltd. 18 σϞ 3
©Fusic Co., Ltd. 19 ·ͱΊ 4
©Fusic Co., Ltd. 20 ·ͱΊ CQRS + ESগ͠ෑډ͕ߴ͍Α͏ͳײ͕͕֮͋ͬͨɺ༗༻ͳͷͰ͋Δ͜ͱຊͷΧϯϑΝϨϯεͰূ໌͞Εͨ Point 01
AWSEventΛѻ͏ҝͷΈ͕͋ΔͷͰαοΫϦͱಋೖʹਐΊΔɺ͚ͲιʔείʔυଆͰͰ͞Βʹྑ͘ͳΓͦ͏ Point 02 ύϑΥʔϚϯεΛग़དྷΔͷͰɺۙʹ͑Δྫͱͯ͑͠Δ͔ Point 03 GitHubʹެ։͍ͯ͠ΔͷͰɺͥͻͬͯΈ·͠ΐ͏ʂ ͔ͱ͡ΎΜ͞ΜͷεϥΠυΛݟͳ͕ΒKJํࣜʹͯ͠Έ·͠ΐ͏ʂ Point 04
©Fusic Co., Ltd. 21 Thank You We are Hiring! https://recruit.fusic.co.jp/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠