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
380
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
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
300
Team-First Serverless Platform Engineering Approach to PHP Applications with Laravel and Bref
seike460
PRO
0
42
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
950
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
470
地方のPHPerもクラウドを使う理由 ~コストの最適化とチームに向き合う~ / Why even local PHPers use the cloud ~optimize costs and face the team
seike460
PRO
0
87
OpenTelemetryで始めるベンダーフリーなobservability / Vendor-free observability starting with OpenTelemetry
seike460
PRO
0
230
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
2
1.3k
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
1
950
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
480
Other Decks in Programming
See All in Programming
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
420
Cell-Based Architecture
larchanjo
0
150
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
120
はじめてのカスタムエージェント【GitHub Copilot Agent Mode編】
satoshi256kbyte
0
130
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
180
GoLab2025 Recap
kuro_kurorrr
0
790
Flutter On-device AI로 완성하는 오프라인 앱, 박제창 @DevFest INCHEON 2025
itsmedreamwalker
1
170
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
200
Go コードベースの構成と AI コンテキスト定義
andpad
0
150
クラウドに依存しないS3を使った開発術
simesaba80
0
190
複雑なUI設計への銀の弾丸 「オブジェクト指向UIデザイン」
teamlab
PRO
2
110
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.5k
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
400
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
130
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.3k
So, you think you're a good person
axbom
PRO
0
1.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
51k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
400
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
58
41k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
39
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
250
End of SEO as We Know It (SMX Advanced Version)
ipullrank
2
3.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠