Diagrammatic

Design a Feature to Show the Number of Users Viewing a Page — System Design Interview Practice

Design a system to track and display the number of concurrent users viewing a page in real-time. Work through the requirements, architecture trade-offs, and an interactive design review.

Requirements and concepts to consider

  • Count active users on a pageRequirement
  • Update count in real-timeRequirement
  • Handle users joining and leavingRequirement
  • Support millions of concurrent pagesRequirement
  • Approximate counting acceptableRequirement
  • Low latency for count updatesRequirement
  • Handle connection drops gracefullyRequirement
  • real timeConcept to explore
  • countingConcept to explore
  • websocketsConcept to explore
  • presenceConcept to explore
  • redisConcept to explore
Diagrammatic — system design practice and architecture review.