Skip to content

BE-73: Live Spectator Room Load Balancer across Clustered WebSocket Nodes #1140

Description

@chinweobtagaz

Problem Statement

When high-profile games attract 10,000+ simultaneous spectators, broadcasting moves from a single node creates network saturation.

Proposed Solution

  1. Implement a spectator fan-out architecture using Redis Pub/Sub cluster.
  2. Player moves are published to Redis channel game:{id}:moves.
  3. Edge WebSocket nodes subscribe to the channel and broadcast to their local spectator client pools.

Acceptance Criteria

  • Support 25,000+ concurrent spectators per match without lag on the players' primary game node.
  • Zero dropped broadcast frames during node scaling events.
  • Integration stress test demonstrating multi-node broadcast efficiency.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions