gpt4 book ai didi

node.js - 如何在多个服务器上使用socket.io-redis?

转载 作者:太空宇宙 更新时间:2023-11-03 22:14:12 25 4
gpt4 key购买 nike

我在两台机器上有以下代码

 var server       = require('http').createServer(app);
io = require('socket.io')(server);
var redisAdapter = require('socket.io-redis');
io.adapter(redisAdaptebr({host: config.redis.host, port: config.redis.port}));
server.listen(config.port, function () {

并且我将连接到这两台机器的每个客户端的socket.id存储在中央数据库上,正在保存套接字的ID并且在同一服务器上发送事件工作正常,但是当我尝试将消息发送到其他服务器的套接字时不起作用..

subSocket = io.sockets.connected[userSocketID];
subSocket.emit('hello',{a:'b'})
  1. 我怎么知道redis运行良好。
  2. 如何向另一台服务器上连接的套接字发送消息。

最佳答案

你不能。 Socket.IO 需要粘性 session 。套接字必须仅与原始进程通信。

docs

您可以让 socket.io 服务器相互通信以传递事件,但客户端必须继续与其发起的进程通信。

关于node.js - 如何在多个服务器上使用socket.io-redis?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34273256/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com