System design interview questionEasyBasic System Component
Design a Distributed Session Store
Design a distributed session store: many app servers must read/write user sessions fast and consistently enough after login.
Interview scope
Client β LB/Gateway β App β Cache (sessions). Optional DB for durable session backup. No Client β Cache.
Functional requirements
- Create a session after login.
- Validate/read session on subsequent requests.
- Expire or invalidate sessions (logout).
Scale and quality goals
- Very low latency reads on every authenticated request.
- Sessions must be shared across multiple app instances.
- Donβt store the only copy of sessions only in one appβs local memory.
Capacity assumption
Design for this scale
Assume ~50M session reads/day (~580 RPS average) and far fewer creates/updates.
Practice more than a diagram
Place components on the Froquiz canvas, connect the data flow, and see which decisions the scenario-specific review finds missing. The full exercise and review unlock with Premium.
Explore Premium β