我已经阅读了很多有关custering,redis的内容,但我找不到真正的样本。
我有一个简单的socket.io应用程序,我需要将此应用程序扩展到许多服务器。
看起来像socket.io和RedisStore是解决方案。
有没有人有关于他如何在许多服务器上使用socket.io的真实世界的小说?
答案 0 :(得分:2)
您需要npm install
包socket.io-redis
。然后通过命令redis-server
启动服务器。
将以下行添加到您的代码中。
var io = require('socket.io')(3000);
var redis = require('socket.io-redis');
io.adapter(redis({ host: 'localhost', port: 6379 }));
然后,您需要修改nginx配置文件以启用负载平衡,如http://socket.io/docs/using-multiple-nodes/#nginx-configuration
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;
}
重新启动nginx服务器,然后运行节点服务器。这也应该扩展您的服务器。