Pragmatic approaches to the Event Horizon
Kingsley Davies@kings13y
kings13y
https://github.com/Tesco/mewbase
[
{ "eventId": "intro", "eventType": "research-developer", "data": {
"industry": "gaming" , "duration": "1" },
{ "eventId": "arch", "eventType": "monolith-decomposer", "data": {
"industry": "gaming" , "duration": "4" },
{ "eventId": "dev", "eventType": "es-builder", "data": { "industry": "govt" , "duration": "1" },
{ "eventId": "foss", "eventType": "es-fwk-builder", "data": {
"industry": "retail" , "duration": "0.5" }
]
Overview - Changing perspective
● Past
● Present
● Future
Legacy microservices
Classic: As-is / To-Be
Data Store
Client
Service Tier
Client
Product Service
Wallet PrefsAccount
DS1 DS2 DS3
Turnaround!!!
Events, Events, Events
● Data architecture
● Model of interaction
A way of life…
First taste of events
Pub[event-emitted]
Event Driven Design
Event-Emitted
SystemSubmits Form
ProcessForm
Event Storming
Event storming IRL
Storing Data
Reading Facts
Features..
Traceability
Autonomy
Stability
FP and Microservices
Immutability
Composability
Functions as 1st class citizens
Laziness
=> Event Source storage
=> Functions over data; Service chains
=> Refinement services, Bounds
=> Serverless
When things go silent/bang
Checkpoint
● Event Storming
● Immutable journal of events
● State and Reads as a leftFold on events
● Build for failure
Anything else familiar from checkpoint ?
● Immutable journal of events
● State and Reads as a leftFold on events
...from serverless to masterless ?
…….and trustless (anonymous) ?
Conclusions
X-Domain (product) Storming + Domain Teams
Inversion of Flow => Innovation
Broken promises, retained dreams
Events + Functions
DDD, Dist Sys, Ops & Crypto
Thanks, Links and Questions
THANK YOU!!!
● @kings13y / @underscore
● http://underscore.io/
● http://breakpointradio.net
● https://github.com/Tesco/mewbase
● https://www.youtube.com/watch?v=ycxvm
OKDHMQ
● https://www.youtube.com/watch?v=gTLV
HrMxBww
● https://t.co/GJIIuBeNu5
● https://vimeo.com/223982152
● https://t.co/FGhs4wwzvF
● https://youtu.be/FJ3T8ytF6ro
● https://www.youtube.com/watch?v=JHGk
aShoyNs