我正在使用基于socket.io的聊天应用程序。
我已在客户端和服务器之间建立了一个事件机制。它在开发中运行良好。
但是当我将相同的代码部署到生产环境并且多个用户开始使用它时。使用一段时间后,应用程序挂起。 Node.js服务器停止响应。 我发现当用户断开连接时,他无法再连接回来。
我的服务器端代码
app.listen(3006);
console.log('listening on port 3006');
//socket io event listening
var io = require('socket.io').listen(server);
io.on('connection', function(socket) {
console.log('a user connected');
socket.on('disconnect', function() {
console.log('user disconnected');
});
socket.on('chat message', function(msg) {
console.log(msg);
io.emit('chat message', msg);
});
以下是客户端代码
<script src="/socket.io/socket.io.js"></script>
<script>
var socket =io();
我在socket io 1.4.5上使用express并使用node.js
我认为Web套接字打开的tcp连接已打开,达到最大限制并且拒绝任何新连接。 客户端是否必须在disconnect socket.io事件上执行任何操作以释放tcp conncetion?
最诚挚的问候, Saurav