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
Event Driven Development
Search
carnage
March 09, 2018
Technology
0
550
Event Driven Development
carnage
March 09, 2018
Tweet
Share
More Decks by carnage
See All by carnage
Object re-orientation
carnage
2
500
More Secrets of Cryptography
carnage
0
410
Nuclear powered software securty
carnage
0
430
Microservices vs The distributed monolith
carnage
1
2.3k
Passwords and how to handle them
carnage
0
390
A storm is brewing
carnage
0
97
The secrets of cryptography
carnage
0
180
The secrets of cryptography
carnage
0
170
You attended talk: An introduction to event sourcing (short)
carnage
0
650
Other Decks in Technology
See All in Technology
AI Agent Dojo #2 watsonx Orchestrateフローの作成
oniak3ibm
PRO
0
130
Adminaで実現するISMS/SOC2運用の効率化 〜 アカウント管理編 〜
shonansurvivors
4
460
RDS の負荷が高い場合に AWS で取りうる具体策 N 連発/a-series-of-specific-countermeasures-available-on-aws-when-rds-is-under-high-load
emiki
6
3.8k
Node.js 2025: What's new and what's next
ruyadorno
0
400
AIツールでどこまでデザインを忠実に実装できるのか
oikon48
6
3.5k
AI時代こそ求められる設計力- AWSクラウドデザインパターン3選で信頼性と拡張性を高める-
kenichirokimura
3
340
コンテキストエンジニアリング入門〜AI Coding Agent作りで学ぶ文脈設計〜
kworkdev
PRO
3
1.7k
なぜAWSを活かしきれないのか?技術と組織への処方箋
nrinetcom
PRO
5
960
20251007: What happens when multi-agent systems become larger? (CyberAgent, Inc)
ornew
1
310
プロダクトのコードから見るGoによるデザインパターンの実践 #go_night_talk
bengo4com
1
2.6k
能登半島災害現場エンジニアクロストーク 【JAWS FESTA 2025 in 金沢】
ditccsugii
0
890
それでも私が品質保証プロセスを作り続ける理由 #テストラジオ / Why I still continue to create QA process
pineapplecandy
0
130
Featured
See All Featured
Designing for Performance
lara
610
69k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
115
20k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
35
6.1k
Practical Orchestrator
shlominoach
190
11k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Transcript
Event Driven Development Christopher Riley ConFoo 2018 1
Introduction
Introduction • Event sourcing 2
Introduction • Event sourcing • Event Driven Architecture 2
Introduction • Event sourcing • Event Driven Architecture • Task
Based UI 2
Introduction • Event sourcing • Event Driven Architecture • Task
Based UI • Event storming 2
What is an event? 2
What is an event? • Something which has happened in
the past 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert • Not technical 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert • Not technical • Raised in response to an input 3
Task based UI
A CRUD UI 4
A Task Based UI 5
Everything a company does is part of a process 5
Why are task based UI’s helpful to event based systems?
5
Event sourcing
A familiar model 6
Event sourcing example 7
What does an event sourced system actually look like? 7
Event sourcing architecture 8
Handling a command 9
Inside the model 10
Inside the model 11
Handling Events 12
Projections
Projections • Turn events into read models 13
Projections • Turn events into read models • Can be
eventually consistent 13
Projections • Turn events into read models • Can be
eventually consistent • Can be rebuilt 13
A projection 14
Process Managers
Process managers • Handle business logic around events 15
Process managers • Handle business logic around events • A
state machine 15
Process managers • Handle business logic around events • A
state machine • Keep track of failures 15
Process managers • Handle business logic around events • A
state machine • Keep track of failures • Be careful with replays 15
A Process Manager 16
Event Driven Architecture
Event Driven Architecture 17
Cross System Process 18
Conclusions
Thanks • @giveupalready • https://github.com/carnage • https://carnage.github.io 19