当前位置 : 主页 > 网页制作 > Nodejs >

node.js – 服务器的Socket.io连接有时无效

来源:互联网 收集:自由互联 发布时间:2021-06-16
我已经在VPS上设置了一个带有socket.io的Node.JS服务器,并且我每隔10秒就将所连接客户端的数量广播到所有服务器.这通常工作正常,但有时连接无法建立,我得到这个错误(我改变了一点IP):
我已经在VPS上设置了一个带有socket.io的Node.JS服务器,并且我每隔10秒就将所连接客户端的数量广播到所有服务器.这通常工作正常,但有时连接无法建立,我得到这个错误(我改变了一点IP):

GET http://166.0.0.55:8177/socket.io/1/?t=1385120872574

重新加载站点后,通常可以建立连接,虽然我不知道为什么失败的连接首先发生,我也不知道如何调试socket.io代码.有时我不能再连接到服务器了,我必须重新启动服务器.

附加信息:

>我的主站点运行在与Node.js服务器不同的服务器上(使用带有CakePHP的LAMP环境).
>我永远使用运行服务器
>我有很多连接客户端(大约1000)
>我的VPS有512 MB Ram,CPU从不高于25%

在top命令之后,尝试:

socket.on('error', function (err) { 
   console.log("Socket.IO Error"); 
   console.log(err.stack); // this is changed from your code in last comment
});

此外,您可以尝试较慢的传输. Socket.io默认使用Websocket,但如果您的服务器无法分配足够的资源,您可以尝试另一种速度较慢但使用较少资源的传输

io = socketIo.listen(80);
io.set('transports', ['xhr-polling']);
网友评论