Day 49: design a multi-tenant SaaS
Fill this in against the clock, 45 minutes for a first full pass, before you open the Solutions or the readings. Then improve it with the readings and mark what you added.
1. Requirements
Functional (tenants, users, data):
Non-functional (data isolation, performance isolation, per-tenant SLOs, operability, cost):
2. Isolation model
Silo, pool, or bridge, and your tiering (who goes where and why):
3. Data isolation
How a tenant’s data is kept separate, and the structural fix so a forgotten tenant filter cannot leak (Day 47):
4. Performance isolation (the noisy neighbour)
How one greedy tenant is contained: quotas, rate limits, fair scheduling (Days 45, 46):
5. Operability
Tenant dimension on metrics and logs (Day 43); per-tenant SLOs and error budgets (Day 44); answering “everyone or one tenant” at 3am:
6. Cost and tiering
Per-tenant cost attribution (Day 48), and the signal that a tenant should move to a silo:
Reflection
The week-7 day I would least want to get wrong in production, and why: