Node.js, socket.io 및 node.js 클러스터로 내 응용 프로그램을 클러스터링하는 데 문제가 있습니다.Node.JS, Socket.IO 및 Cluster의 WebSocket 핸드 셰이크가 작동하지 않습니다.
socket.io-redis를 사용하여 모든 작업자에 대한 정보를 공유하지만 작동하지 않습니다.
내 코드 : 클라이언트에서
var cluster = require('cluster');
var numCPUs = require('os').cpus().length;
if (cluster.isMaster) {
// Fork workers.
for (var i = 0; i < numCPUs; i++) {
cluster.fork();
}
cluster.on('exit', function(worker, code, signal) {
console.log('worker ' + worker.process.pid + ' died');
});
} else {
...
var express = require("express");
//Server
var server = express();
//Socket.io
var http = require('http').Server(server);
var io = require('socket.io')(http);
var redis_io = require('socket.io-redis');
var redis = require("redis");
io.adapter(redis_io({host: "127.0.0.1", port: 6379 }));
...
}
, 난 400 오류와 같은 핸드 셰이크에 에러가 발생하거나 연결이 설정되기 전에 웹 소켓이 닫혀 있습니다.
내가 이것을 해결하기 위해 할 수있는 일은 무엇입니까?
임 Node.js를의 마지막 버전과 socket.io
감사를 사용!
: 여기
내가 내 테스트 페이지에 넣어 자바 스크립트 클라이언트 코드입니다 (다시, 실제 클라이언트는 그래서 여기 내 웹 페이지가 정말 구축하고 테스트하는 데 도움 단지 도움이됩니다, 모바일 앱입니다) 브랜든, 고마워! 귀하의 솔루션이 최고입니다! –