Javascript node.js中的socket.io连接过期或超时
我已经翻遍了文档,但没有看到任何专门处理此问题的方法,因此我正在寻找一种可管理的解决方法,以便在一段时间后有效地“过期”或断开socket.io客户端的连接。显然,在node.js上,我需要任何处理这个的事件都是异步和非线程阻塞的 在我看来,这是我想要实现的一个糟糕的例子,但请考虑: 用户连接到房间的最长时间为3分钟:Javascript node.js中的socket.io连接过期或超时,javascript,node.js,sockets,socket.io,Javascript,Node.js,Sockets,Socket.io,我已经翻遍了文档,但没有看到任何专门处理此问题的方法,因此我正在寻找一种可管理的解决方法,以便在一段时间后有效地“过期”或断开socket.io客户端的连接。显然,在node.js上,我需要任何处理这个的事件都是异步和非线程阻塞的 在我看来,这是我想要实现的一个糟糕的例子,但请考虑: 用户连接到房间的最长时间为3分钟: socket.on('connection', function(params){ var maxTime = params.maxTime; socket.joi
socket.on('connection', function(params){
var maxTime = params.maxTime;
socket.join(params.roomId);
setTimeout(function{
socket.leave(params.roomId);
}, 180000)
});
我觉得这将为1个连接工作良好,但似乎这将导致一些严重的开销,我应该说10000个并发客户端连接到一系列房间吗
有更好的或公认的解决方法吗?为什么不在客户端跟踪连接时间,而不为此使用任何服务器资源 据我所知,如果只是客户端JS,这会导致滥用。如果客户端失去了连接,我如何向服务器通知断开连接