The Aggregate is dead. Long live the Aggregate!
summary
Argues that traditional Aggregates cause unnecessary contention and brittle event-sourced schemas and instead uses event sourcing plus a conditional append API (parameters: stream query and last-event-id) to enforce optimistic consistency. Demonstrates with a course/student subscription example: merge duplicate writes into pure events tagged with domain identifiers, validate rules by loading only relevant streams, and reject appends when intervening events exist. Calls this a dynamic consistency boundary that lowers contention, simplifies refactoring, and keeps strong consistency without fixed aggregate ownership.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 0:34The Aggregate
- 2:08The Blue Book
- 9:02Aggregate Mix
- 16:33Alternative Solutions
- 20:20More Complex Solutions
- 30:50Concurrency
- 37:13Duplicates
- 43:17Pure Events
- 45:11Conclusion
related talks
47mThe Aggregate is dead. Long live the Aggregate!
50mThe Aggregate is dead. Long live the Aggregate!
48mThe Aggregate is dead. Long live the Aggregate!
50mDeveloping Microservices with Aggregates
56mDeveloping Event-driven Microservices w/Event Sourcing and CQRS
43mEvent Sourcing dealing with an eventful past
56mAn Abridged Guide to Event Sourcing
50mEntities and Aggregates: The Moment We 'Clicked' and Understood...
