【发布时间】:2015-12-04 05:56:22
【问题描述】:
我在文档中进行了研究,但没有看到任何专门处理此问题的内容,因此我正在寻找一种可管理的解决方法,以在一定时间后有效地“过期”或断开 socket.io 客户端。显然,在 node.js 上,我需要任何将其处理为异步且非线程阻塞的事件。
在我看来,这是我想要实现的目标的一个坏例子,但请考虑:
用户连接到一个最长 3 分钟的房间:
socket.on('connection', function(params){
var maxTime = params.maxTime;
socket.join(params.roomId);
setTimeout(function{
socket.leave(params.roomId);
}, 180000)
});
我觉得这适用于 1 个连接,但如果我说 10000 个并发客户端连接到一系列房间,它似乎会导致一些严重的开销?
有没有更好或被接受的方法来解决这个问题?
【问题讨论】:
标签: javascript node.js sockets socket.io