recall

← recall

cell-based architecture pattern

Divide users (or tenants) into independent cells, each with its own infrastructure stack. A failure in one cell affects only that cell's users. Each cell is small enough to deploy/test independently. Slack, AWS, and many large multi-tenant SaaS use this.

Divide users (or tenants) into independent cells, each with its own infrastructure stack. A failure in one cell affects only that cell's users. Each cell is small enough to deploy/test independently. Slack, AWS, and many large multi-tenant SaaS use this.

symptoms

  • single deploy can take down everyone
  • one bad tenant degrades all tenants
  • horizontal scaling hits coordination bottlenecks

causes

  • monolithic prod environment
  • all tenants share the same stack

fixes

  • cells of N tenants each
  • cell router maps tenant → cell
  • deploy/test/recover per cell
  • shuffle sharding for blast-radius minimization

you might say

  • cell architecture
  • shuffle into cells
  • blast radius per cell

related

aliases: cells

topics: architecture, resilience

references: