Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Thinking Event Driven Architectures with Serverless
Vinicius Gomes
July 20, 2018
Programming
0
1.3k
Thinking Event Driven Architectures with Serverless
Presented at ThoughtWorks XConf North America 2018
https://www.thoughtworks.com/xconf-na
Vinicius Gomes
July 20, 2018
Tweet
Share
More Decks by Vinicius Gomes
See All by Vinicius Gomes
vvgomes
0
10
vvgomes
0
140
vvgomes
0
260
vvgomes
6
950
vvgomes
1
400
vvgomes
1
530
vvgomes
0
420
vvgomes
2
480
vvgomes
0
61
Other Decks in Programming
See All in Programming
ottijp
0
180
imk2o
0
190
dunglas
5
5k
kulkarniankita09
0
270
kaonash
2
1.9k
rockname
1
320
nori0__
1
480
wafuwafu13
1
140
tooppoo
1
450
syucream
4
1.4k
d_endo
1
500
ganchan11
0
120
Featured
See All Featured
keithpitt
402
20k
mongodb
23
3.9k
denniskardys
220
120k
chriscoyier
498
130k
ufuk
56
5.5k
imathis
479
150k
jakevdp
776
200k
cassininazir
347
20k
holman
288
130k
thoeni
3
660
lara
172
9.7k
scottboms
252
11k
Transcript
Thinking Event Driven Architectures With Serverless Vinicius Gomes, Software Engineer
EXAMPLE Online Restaurant
ONLINE RESTAURANT
ONLINE RESTAURANT Customers Menu Orders
ONLINE RESTAURANT Customers Menu Orders
ONLINE RESTAURANT Customers Menu Orders
ONLINE RESTAURANT Customers Menu Orders
ONLINE RESTAURANT Customers Menu Orders Event
ONLINE RESTAURANT Customers Menu Orders " Event
ONLINE RESTAURANT Customers Menu Orders " Event
ONLINE RESTAURANT Customers Menu Orders " Event
ONLINE RESTAURANT Customers Menu Orders " Event
ONLINE RESTAURANT Customers Menu Orders Publish Consume MenuItemAdded MenuItemAdded CustomerSignedUp
CustomerSignedUp OrderPlaced OrderOpened OrderPlaced OrderOpened OrderPlaced MenuItemAdded CustomerSignedUp
Publish Consume MenuItemAdded MenuItemAdded CustomerSignedUp CustomerSignedUp OrderPlaced OrderOpened OrderPlaced OrderOpened
OrderPlaced MenuItemAdded CustomerSignedUp ONLINE RESTAURANT Customers Menu Orders
ONLINE RESTAURANT Menu
CQRS + EVENT SOURCING Menu
Service CQRS + EVENT SOURCING github.com/vvgomes/event-driven-restaurant
THINKING SERVERLESS
SERVERLESS
SERVERLESS
SERVERLESS BaaS
SERVERLESS BaaS FaaS +
SERVERLESS
SERVERLESS
SERVERLESS •Abstraction
SERVERLESS •Abstraction •Deployment
SERVERLESS •Abstraction •Deployment •Scalability
SERVERLESS •Abstraction •Deployment •Scalability •Monitoring
SERVERLESS •Abstraction •Deployment •Scalability •Monitoring •Cost
Publish Consume MenuItemAdded MenuItemAdded CustomerSignedUp CustomerSignedUp OrderPlaced OrderOpened OrderPlaced OrderOpened
OrderPlaced MenuItemAdded CustomerSignedUp Customers Menu Orders BACK TO THE ONLINE RESTAURANT
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING API Gateway Commands Queries Event Bus
Query DB Event Store Event Publisher Event Listener 1 Event Listener n
CQRS + EVENT SOURCING
CQRS + EVENT SOURCING Example source code github.com/vvgomes/serverless-restaurant
FINAL THOUGHTS
SERVERLESS EDA
SERVERLESS EDA Open questions
SERVERLESS EDA Open questions •Cost of operations?
SERVERLESS EDA Open questions •Cost of operations? •Vendor Lock-in?
SERVERLESS EDA Open questions •Cost of operations? •Vendor Lock-in? •Customization?
SERVERLESS EDA Open questions •Cost of operations? •Vendor Lock-in? •Customization?
•Predictability?
SERVERLESS EDA Open questions •Cost of operations? •Vendor Lock-in? •Customization?
•Predictability? •Nature of the problem?
thinking event driven architectures with serverless Vinicius Gomes THANKS