Socket.io socketio在3k连接后冻结
我有一个基本的socketio服务器,比如:Socket.io socketio在3k连接后冻结,socket.io,Socket.io,我有一个基本的socketio服务器,比如: var io = require('socket.io'); var express = require('express'); var server = express(); var serverApp = server.listen(3000); io = io.listen(serverApp); io.sockets.on('connection', function (socket) { }); 和一个基本的客户端节点: var io
var io = require('socket.io');
var express = require('express');
var server = express();
var serverApp = server.listen(3000);
io = io.listen(serverApp);
io.sockets.on('connection', function (socket) {
});
和一个基本的客户端节点:
var io = require('socket.io-client');
function startTest() {
var socket = io.connect('http://localhost:3000', {forceNew: true});
socket.on('disconnect', function (err) {
startTest();
});
socket.on('connect', function () {
nbConnexions++;
console.log('connected, nbConnexions : ' + nbConnexions);
socket.disconnect();
});
}
startTest();
在~3k连接后,服务器冻结,并在1分钟后继续,在3k连接后再次冻结,然后再次
问题可能来自socketio?你有相同的“错误”吗?我没有内存泄漏。Socketio只是没有回应。如果我在3k连接和冻结之后重新启动服务器,它总是在连接新请求之前等待1分钟 我使用的是debian 7.6版,带有socketio 1.2.1 我在windows上没有相同代码的问题 Linux是否会阻止一些资源/端口avec 3k套接字?好的,我找到了 在3k连接之后,我有相同的值
sysctl net.netfilter.nf_conntrack_count
及
将/proc/sys/net/nf_conntrack_max中的值增加到65535,问题就解决了
sysctl net.nf_conntrack_max