我正在尝试为kubernetes部署设置socket.io-redis,但配置有问题。
io.of('/').adapter.sockets()、io.of('/').adapter.allRooms()以及在成功配置socket.io-redis后应该可以使用的所有其他函数都是未定义的。我的配置如下。
const app = require('express')();
const server = require('http').createServer(app);
const io = require('socket.io')(server, {transports: ['websocket']});
const redisAdapter = require('socket.io-redis');
io.adapter(redisAdapter({port: 6379, host: '127.0.0.1'}));在本应是简单的配置中,我找不到任何其他困难的情况。我使用的是socket.io 2.3.0和socket.io-redis 5.4.0,根据文档应该是兼容的。
发布于 2021-01-28 23:06:51
当在Kubernetes集群上部署Socket.IO应用程序时,这意味着多个SocketIO服务器(Pod),有两件事需要注意:
粘性会话特性:当请求从
Redis adapter的相同进程(Kubernetes中的Pod)保持连接
您可以从这个媒体故事(源代码可用) Medium中了解到更多信息
https://stackoverflow.com/questions/65568338
复制相似问题