我受到了启发:http ://socket.io/docs/using-multiple-nodes/#passing-events-between-nodes ,现在我想通过 redis 适配器同步我的两个 socket.io 实例。
这是我的代码:
//FIRST SERVER (server1.js)
var io = require('socket.io')(3000);
var redis = require('socket.io-redis');
io.adapter(redis({ host: 'localhost', port: 6379 }));
var test = 0;
io.on('connection', function (socket) {
test+=1;
console.log("connection. test = " + test);
});
//SECOND SERVER (server2.js)
var io = require('socket.io')(4000);
var redis = require('socket.io-redis');
io.adapter(redis({ host: 'localhost', port: 6379 }));
var test = 0;
io.on('connection', function (socket) {
test+=1;
console.log("connection. test = " + test);
});
当我连接到 server1.js(端口 3000)时 - 我看到了“连接。test = 1',很好,但是第二台服务器的控制台还是干净的。我希望第二台服务器(端口 4000)做同样的事情(打印 'connection = 1')。
我做错了什么?你能告诉我一个如何使用适配器的例子吗?
谢谢