Node.js 如何在多台服务器上扩展socket.io应用程序?
我读了很多关于custering、redis的资料,但我找不到任何真实的样本 我有一个简单的socket.io应用程序,我需要将此应用程序扩展到许多服务器 看起来socket.io和Redistore是解决方案Node.js 如何在多台服务器上扩展socket.io应用程序?,node.js,redis,socket.io,Node.js,Redis,Socket.io,我读了很多关于custering、redis的资料,但我找不到任何真实的样本 我有一个简单的socket.io应用程序,我需要将此应用程序扩展到许多服务器 看起来socket.io和Redistore是解决方案 有人对如何在许多服务器上使用socket.io有真实的了解吗?您需要npm安装软件包socket.io redis。然后通过命令redis server启动服务器。 在代码中添加以下行 var io = require('socket.io')(3000); var redis = re
有人对如何在许多服务器上使用socket.io有真实的了解吗?您需要
npm安装软件包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配置文件以启用负载平衡,如中所示
重新启动nginx服务器,然后运行节点服务器。这应该也可以扩展您的服务器。很抱歉,我不太理解:看起来您在同一台服务器(127.0.0.1)上实现了负载平衡,而目标是在多台服务器上扩展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;
}