Data Strategies for Microservice
Architectures
Edson Yanaga
Director of Developer Experience
@yanaga
Marius Bogoevici
Chief Architect, Data Streaming
@mariusbogoevici
Slide 2
Slide 2 text
Code is easy,
state is hard
Slide 3
Slide 3 text
POJOs as an
(Anemic) Domain Model
Slide 4
Slide 4 text
‘Traditional’ application design
Slide 5
Slide 5 text
Applying Domain Driven Design
Slide 6
Slide 6 text
Persistent Data
Slide 7
Slide 7 text
Strategy: One Database per Microservice
Slide 8
Slide 8 text
Virtualization: where physical separation is hard
Slide 9
Slide 9 text
Volatile data: caching and sharing state
Slide 10
Slide 10 text
Reducing latency via caching
Slide 11
Slide 11 text
Sharing state - replication and partitioning
Slide 12
Slide 12 text
Propagating state change:
Event Sourcing & CDC
Slide 13
Slide 13 text
Communication: synchronous/asynchronous
1: ship
2: update state
3: update state update state update state
OrderCreated