2017-01-04 3 views
0

Ich versuche, socketio auf mehreren Servern zu verwenden, während einer ganzen Woche habe ich verschiedene Lösung versucht, auf einer anderen Plattform und alle von ihnen funktionieren nicht.Verwenden Sie socketio und redis auf mehreren Servern

für mein Projekt Ich benutze Nginx Load Balancing mit Iphash, um die Clients auf dem gleichen Server zu halten, und an alle Sockets Broadcast ich verwende Redis socketio Adapter.

Ich probierte auch diese Projekte, um zu sehen, ob es funktioniert und zu verstehen, wie es funktioniert, aber diese angeblich gebrauchsfertigen Projekt funktionieren auch nicht.

https://github.com/h4t0n/socket.io-redis-appsample

und dieses

https://github.com/evilstudios/chat-example-cluster

ich mit redis an Fenstern und auf Linux versucht, aber keinen Unterschied.

Ich lese auf verschiedene Fragen, die wir verwenden müssen "transports: ['websocket']", einige Personen sagten, dass es auf den Clients einige andere auf den Clients und Servern getan werden muss, versuchte ich beide Lösung und es nicht Arbeiten.

Ich bekomme keine Fehler oder Warnungen, die Ereignisse werden einfach nicht an die Sockets auf den anderen Servern gesendet.

Antwort

0

sehen Sie, es kam von Inkompatibilität zwischen der Version oder so ähnlich. Ich aktualisierte socket.io und seine Arbeit

Ich begann die Entwicklung meiner App vor etwa 6 Monaten zu dieser Zeit die letzte Version war 1.4.8, also benutze ich diese Version jetzt aktualisiert ich es auf 1.7.2 und es funktioniert.

über socket.io-redis Ich installierte es in dieser Woche nur so war ich wie die letzte Version 2.0.1

Look mit zwischen 1.4.8 und 1.7.2 etwas Wichtiges verändert.

Verwandte Themen