Ich möchte die Architektur von Echtzeit-Chat für Millionen von Benutzern wie WhatsApp wissen.Java Chat Socket Milion Clients
ich implementiert einen Chat, aber ich muss mehr Server verwenden, um mehr Kunden
ich eine andere Frage zu lesen zu behandeln, aber ich habe immer noch Zweifel. Sagen Sie mir, wenn das, was ich sage, richtig ist:
Clients verbinden mit Load Balancer, die entscheiden, Verbindung zu einem der WhatsApp-Server zu geben. Beispiel clientâ zu Server1 verbinden, verbinden ClientB zu Server2
-Wenn clientâ mit ClientB kommunizieren möchte, eine Nachricht an den Server1 sendet nun diese wie Sie wissen, in welchem Server ist ClientB? Aufrechterhaltung der Skalierbarkeit für Millionen von Benutzern)
Wie implementiert man einen Chat, um Millionen von Benutzern zu verwalten?
Danke, aber wenn ich eine große Datenbank verwende, wenn ich Millionen von Benutzern haben, müssen jeder Server unter Millionen von Abfragen suchen, was Sie wollen.Dies dauert Zeit – John
Wenn Sie eine Zeile von PK (wie Client-ID) dann holen Die Datenbank-Engine kann dafür sorgen. Alle großen sozialen Apps nutzen diese Architektur. –
Hier ist eine sehr detaillierte Beschreibung der Architektur, die Instagram von ihrem Tech-Blog verwendet. Sie verwenden redis (Open-Source-Schlüsselwert nosql db) für ihren Haupt-Feed. Sie verwenden auch traditionelle RDBMS und Cloud-Speicher, lesen Sie einfach alles darüber http://instagram-engineering.tumblr.com/post/13649370142/what-powers-instagram-hunderds-of-instances –