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
420
地方のPHPerもクラウドを使う理由 ~コストの最適化とチームに向き合う~ / Why even local PHPers use the cloud ~optimize costs and face the team
seike460
PRO
0
71
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
740
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
390
実行委員長が振り返るBacklogWorldの裏側と運営Backlog術 / The chairperson of the executive committee looks back on the backstage of BacklogWorld and the art of managing Backlog.
seike460
PRO
0
12
Amazon Aurora DSQLパフォーマンスチェック / Amazon Aurora DSQL Performance Check
seike460
PRO
0
23
Other Decks in Programming
See All in Programming
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
300
How Android Uses Data Structures Behind The Scenes
l2hyunwoo
0
450
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
530
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
530
rage against annotate_predecessor
junk0612
0
170
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
230
「待たせ上手」なスケルトンスクリーン、 そのUXの裏側
teamlab
PRO
0
520
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
3
200
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
150
AIと私たちの学習の変化を考える - Claude Codeの学習モードを例に
azukiazusa1
10
4.1k
Kiroで始めるAI-DLC
kaonash
2
590
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
270
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Scaling GitHub
holman
463
140k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How STYLIGHT went responsive
nonsquared
100
5.8k
Designing for Performance
lara
610
69k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
Optimizing for Happiness
mojombo
379
70k
The Language of Interfaces
destraynor
161
25k
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/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠