你好,
在 socket.io 上使用轮询时,我得到了很多 400 个 HTTP 标头。
我正在使用 nodejs 集群:
这是代码片段:
如果(cluster.isMaster){
// 分叉工人。
//numCPUs=1;
for (var i = 0; i < numCPUs-1; i++) {
集群.fork();
}
}
//工人代码:
别的{
var socket_io = require('socket.io')(server);
var redis_adapter = require('socket.io-redis');
socket_io.adapter(redis_adapter({ host: config.redis.ip, port: config.redis.port }));
//剩下的代码
socket_io.on('connection', function (socket) {
}
这方面的任何指针都会有所帮助。
提前致谢
你好! 我在使用 socket.io 设置集群时遇到了很多麻烦,因为没有很多示例。 我有一个工作示例,用于控制一些树莓派
https://github.com/jordanpappas/raspi-car/tree/master/server
我真的需要做一个单独的例子来展示如何让它工作,但现在你可以查看链接中的索引文件。 为了让它发挥作用,您必须确保做一些事情。
var io = sio(server, { 'transports': ['websocket'] });
在客户端:
var socket = io.connect('http://localhost:3000', { 'transports': ['websocket'] });
这应该会让你朝着正确的方向前进,我将一起制作一个简单的例子。
当然,谢谢。我解决了这个问题。我在集群工作者中使用了粘性会话库,这是错误的,因为库本身会创建工作者。
该问题已自动关闭。 请检查您的问题是否已在最新版本中得到解决,并在需要时重新打开(如果可能,请使用小提琴重现问题)。
在这个问题上浪费 4 个小时
最有用的评论
你好! 我在使用 socket.io 设置集群时遇到了很多麻烦,因为没有很多示例。 我有一个工作示例,用于控制一些树莓派
https://github.com/jordanpappas/raspi-car/tree/master/server
我真的需要做一个单独的例子来展示如何让它工作,但现在你可以查看链接中的索引文件。 为了让它发挥作用,您必须确保做一些事情。
在客户端:
这应该会让你朝着正确的方向前进,我将一起制作一个简单的例子。