を実行するために帆でsockets.ioを有効にする私は帆私は複数のポートでsocket.ioの接続を持つことができるアプリを設定する必要があります - 例えば、認証用ポート3999とのデータ同期にポートに4999複数のポートで
をどれでもそうする方法は?
を実行するために帆でsockets.ioを有効にする私は帆私は複数のポートでsocket.ioの接続を持つことができるアプリを設定する必要があります - 例えば、認証用ポート3999とのデータ同期にポートに4999複数のポートで
をどれでもそうする方法は?
私は昨日同じような質問をしましたが、あなたのものも私のものと似ているようですが、ここで実装しようとしています。
異なるポートで動作する複数のインスタンスがあると仮定すると、それらは互いに直接話すことができず、WebSocketの機能が中断されます。
there are multiple solutions to this(スティッキセッションとRedisのpub/sub機能を使用しているようです)、私はRedisを選択しました。これにはsocket.io-redisというモジュールがあります。 emitter moduleも必要です。ここにあります。
ルートを選択した場合、1台のサーバー上にいくつのサーバー(複数のインスタンスがある複数のサーバー)または多数のインスタンスを実行しても、Redisのおかげで問題なく機能します。
少なくとも私が今知っていることは、数日間探していて、まだ試していないことです。
ロード・バランシングにはNginxを使うことができます(下記参照)。 (socket.ioドキュメントからコピー)
upstream io_nodes {
ip_hash;
server 127.0.0.1:6001;
server 127.0.0.1:6002;
server 127.0.0.1:6003;
server 127.0.0.1:6004;
}
最後bootstrap.js VAR customAppServer = http.createServer(sails.hooks.http.app)別HttpServerを作成することになりました。 var customAppSocket = io(customAppServer); customAppServer.listen( '3001'); module.exports.customAppSocket = customAppSocket; customAppSocket.on( '接続'、関数(ソケット){ sails.config.customRoutes.setListeners(ソケット); socket.emit( 'connected'、{hello: 'world'}); }); – Upasana