Completed
Summary
Class Central Classrooms beta
YouTube videos curated by Class Central.
Classroom Contents
Developing Microservices with Aggregates
Automatically move to the next video in the Classroom when playback concludes
- 1 Developing Microservices with Aggregates
- 2 Presentation goal
- 3 About Chris
- 4 Microservice architecture
- 5 Domain model = tangled web of classes
- 6 Reliance on ACID transactions to enforce invariants
- 7 and requires 2PC
- 8 2PC is not an option
- 9 Domain Driven Design - building blocks
- 10 About Aggregates
- 11 Aggregate: rule #1
- 12 Domain model = collection of loosely connected aggregates
- 13 Easily partition into microservices
- 14 Aggregate rule #2
- 15 Transaction scope = service
- 16 How to maintain data consistency between aggregates?
- 17 Using event-driven Sagas instead of 2PC
- 18 Saga-based, eventually consistent order processing
- 19 Complexity of compensating transactions
- 20 How atomically update database and publish an event
- 21 Failure = inconsistent system
- 22 Event sourcing = event-centric persistence
- 23 Persists events NOT current state
- 24 Replay events to recreate state
- 25 The Customer aggregate
- 26 Customer command processing
- 27 Customer applying events
- 28 Request handling in an event sourced application
- 29 Event Store publishes events consumed by other services
- 30 Event store = database + message broker
- 31 Benefits of event sourcing
- 32 Drawbacks of event
- 33 Summary