SevyDevy

Design a WebSocket gateway for 10M connections

PremiumReal-timeMedium

  • WebSocket
  • Connection registry
  • Heartbeats

Quick answer

This real-time interview question asks you to design a WebSocket gateway for 10M connections. Aim for a design that delivers updates to many users with low delay, then explain connections, fan-out, ordering and trade-offs. Interviewers want to see how you keep latency low, handle reconnects and stay correct under load.

The problem

Design a WebSocket gateway that holds 10 million concurrent connections for a consumer app with chat, notifications and live updates, like the gateway behind Discord or Slack. Backend services send to a user or a topic and the gateway writes to the right sockets; the hard part is surviving deploys, node crashes and reconnect storms.

Instead of every backend team running its own socket servers, one gateway layer holds every client connection. Clients send messages up through the same socket, and the gateway forwards them to the right service. At peak, ten million phones and browsers are connected at once.

What must a WebSocket gateway for 10M connections do?

  • Connect: A client opens a TLS WebSocket with an auth token; the gateway validates it and binds the connection to a user and device.
  • Send down: A service sends to a user id (all devices), a connection id or a topic; the gateway delivers to every matching open connection.
3 more requirementsUnlock to see all

How well must it do it?

  • Latency: Gateway adds under 20 ms at p99 between a service send and the client receiving it.
  • Availability: A gateway node crash disconnects only that node's clients, who reconnect within seconds.
3 more requirementsUnlock to see all

What scale should you design for?

Use these numbers in your estimates.

The scale numbers unlock with this questionUnlock

Key concepts

  • WebSocket
  • Connection registry
  • Heartbeats
  • Backpressure
  • Reconnect jitter
  • Connection draining

How you’ll practise

6 short steps · save and come back any time
  1. Requirements
  2. Estimate
  3. Connections
  4. Message flow
  5. Delivery guarantees
  6. Wrap-up

Lala, personalized to you, gives a hint when you ask and reviews your design when you are ready.

What do interviewers look for?

In any real-time design round.

  • Clarifies latency, ordering and delivery guarantees
  • Chooses a connection model with reasons
  • Explains fan-out to many receivers
  • Handles reconnects, missed messages and duplicates
  • Plans for hot spots and sudden traffic spikes
  • States trade-offs between consistency and speed

Questions people ask about this interview question

Which design type is this question?
It is a real-time question. You design a WebSocket gateway for 10M connections and explain your choices the way you would in an interview.
Is this question asked at entry level?
It is marked Medium. Entry-level engineers can practise it, but it expects you to reason about requirements and trade-offs, not only list components.
What should I cover first?
Start with who sends and receives updates, how fast they must arrive and what order matters. Agree on scope with the interviewer before you design anything.
Can I practise it for free?
It is a premium question. Sign up and unlock it once for 10 credits; it then stays unlocked. When you finish, Lala, your personalized AI mentor, can review your design for 30 credits.

Related questions

Updated · Written by the SevyDevy team

Premium questionSign up free, then unlock it