Es gibt Tonnen von Tutorials, wie man Chat-Anwendung mit socket.io und node.js zu entwickeln und ohne Zweifel ereignisgesteuerte Vorteil von Knoten hat den Vorteil, Chat-Anwendung zu tun. Aber vor kurzem kam mir dieser Gedanke in den Sinn. Wie kann ich meine Chat-App aufrechterhalten, wenn ich die App bereitstelle? Stellen Sie sich vor, dass tausende von Benutzern aktiv darin chatten.node.js App-Bereitstellung mit PM2 ohne Ausfallzeiten
in diesem Artikel klar sagen, dass Cluster-Technologie erfordert zusätzliche Sorgen, Hmm gibt es eine Möglichkeit, dieses Problem anzugehen?
Neustart dauert etwa ein paar Sekunden. Ich habe meine Chat-App getestet. es funktionierte wie immer. Ich denke, es wird für einen Bruchteil einer Sekunde Ausfallzeit haben, aber der vorher etablierte Sockel ist nicht zusammengebrochen. –
socket.io mit redis für Sitzung? Sie brauchen eine Sitzung mit socket.io? –
Sie haben Recht, aber wenn Sie die PM2 selbst aktualisieren müssen, ist die Ausfallzeit größer. Wenn Sie das NodeJS-itsel aktualisieren müssen, das gleiche. Wenn Sie den Computer aus irgendeinem Grund neu starten müssen, gehen alle Clustered-Instanzen verloren. Deshalb habe ich gesagt, PM2 ist nicht das beste Werkzeug dafür (und bekam einen Downvote). Es ist ein guter Anfang, aber wie Sie sagten, "Tausende von Benutzern" verlassen sich darauf. Ich würde nie, jemals, PM2 für ein Projekt mit so vielen Benutzern verwenden. Ereignis, wenn es einen Cluster von Knoteninstanzen ausführt, ist es immer noch ein einzelner Fehlerpunkt weg von der vollständigen Ausfallzeit. –