Concepts

The ideas behind Event Sourcing, CQRS, and Domain-Driven Design, explained without any product, along the five stages of the lifecycle.

Remembering
Introduction to Event Sourcing

This guide introduces the concept of event sourcing and explains how it differs from traditional approaches to storing application state.

What is CQRS?

CQRS stands for Command Query Responsibility Segregation.

Use Cases

This guide helps you understand where event sourcing can be most effectively applied.

Designing Read Models

This guide explores how to design effective, purpose-driven read models in an event-sourced system.

Read-Model Consistency and Lag

This guide explains how to manage the consistency and freshness of read models in event-sourced systems.

Eventual Consistency in Practice

This guide explains what eventual consistency means in the context of event-sourced systems and how to design applications that behave correctly even when data is temporarily out of sync.

Snapshots and Performance

This guide explains how to use snapshots in event-sourced systems to improve performance and reduce overhead during replay.

Optimizing Event Replays

This guide explains how to optimize the performance and structure of event replays in event-sourced systems.

Patterns for Temporal Queries

This guide explores patterns for performing time-based queries in event-sourced systems.

Versioning Events

This guide explains how to evolve event types and structures in a safe, predictable, and maintainable way.

GDPR Compliance

This guide explains how to assess and achieve GDPR compliance in event-sourced systems.

Common Mistakes

This guide describes common mistakes and misunderstandings that arise when working with the event sourcing model.