Netflix: Limit the Number of Screens Each User Can Watch — System Design Interview Practice
Design a system to enforce concurrent streaming limits per user account. Work through the requirements, architecture trade-offs, and an interactive design review.
Requirements and concepts to consider
- Track active streaming sessions per accountRequirement
- Enforce screen limits (e.g., 2, 4 screens)Requirement
- Handle session start and stop eventsRequirement
- Gracefully handle edge cases (network issues)Requirement
- Support different subscription tiersRequirement
- Real-time session monitoringRequirement
- Handle millions of concurrent usersRequirement
- Session timeout and cleanupRequirement
- session managementConcept to explore
- access controlConcept to explore
- distributed systemsConcept to explore
- redisConcept to explore
- concurrencyConcept to explore