← All Articles

CQRS Read-Model Rebuilds with Versioned Cutover

Rebuild large read models online using side-by-side projections, semantic diff checks, and cohort-based traffic migration.

Read models drift. Rebuilds are inevitable. Downtime is optional.

Versioned Strategy

  1. Build V2 projection in parallel.
  2. Compare V1/V2 on sampled traffic.
  3. Shift cohorts gradually.
  4. Keep rollback path warm.
if cohort(userId) == "canary":
  query(V2)
else:
  query(V1)

Confidence comes from diff quality, not migration speed.

Next ArticleBuilding Scalable Microservices with GolangBackend · 12 min read