System Design · Senior · Frage 11 von 75
Wie skaliert man WebSocket-Server horizontal?
- 1Alle Verbindungen auf einem Server mit viel Speicher halten
- 2Knoten über Pub/Sub verbinden, um zwischen ihnen zuzustellen
- 3Clients bei jeder Nachricht mit einem zufälligen Knoten neu verbinden
Antwort zeigen
Richtige Antwort: Knoten über Pub/Sub verbinden, um zwischen ihnen zuzustellen
Erklärung
Nutzer desselben Chats sind mit verschiedenen Knoten verbunden. Der Knoten, der eine Nachricht empfängt, veröffentlicht sie auf einem Bus, und Knoten mit Abonnenten stellen sie an ihre Verbindungen zu. Der Load Balancer muss langlebige Verbindungen unterstützen; bei Deployments verbinden sich Clients schrittweise neu.