CQRS, DDD and GraphQL, a perfect fit?
summary
Claims practical architecture: GraphQL maps naturally to CQS (queries→queries, mutations→commands), and a clean DDD layering keeps business logic in aggregates while the GraphQL layer remains thin. Concrete tools and patterns shown include Hot Chocolate, the Nitro registry/IDE, mediator-based handlers, and data loader batching that applies selection expressions to avoid N+1 and push efficient projections into infrastructure. Examples cover mutation patterns with immediate read vs transaction-id + subscription eventual consistency, federated subgraphs (at Netflix scale: 4,000 subgraphs and 6M requests/s) and batched paginated data loaders.
AI-written summary · about
chapters (16)
- 0:00Introduction
- 1:05GraphQL misuse in DB-first
- 3:56Enterprise app definition
- 5:24Clean architecture
- 9:50CQS and GraphQL ops
- 14:05DDD aggregates
- 16:14App layer queries
- 24:44Domain-driven design fundamentals and benefits
- 30:03DDD contexts and subgraphs
- 33:33Domain events and subs
- 37:25DDD adoption challenges
- 38:48GraphQL for enterprises
- 41:15GraphQL resolver patterns
- 46:21GraphQL schema registry
- 50:42Schema evolution
- 51:47Summary
related talks
46mCQRS, DDD and GraphQL, a perfect fit
21mGraphQL and CQRS, a Perfect Fit
52mThe DDD Aspect and GraphQL in Building High-Load Integration Systems
41mDemand Driven Applications with GraphQL by Vinci Rufus
50mDistributed GraphQL APIs: Breaking Down Monoliths & Unlocking Agility for Dev Teams
35mGraphQL in the Enterprise
47mSchema Design in the Age of AI: Pragmatic Patterns to Evolve and Ship Fast
59mCQRS pitfalls and patterns
