node的tcp服务器在云主机上只能最大连接170个
发布于 1 个月前 作者 lth3726381 320 次浏览 来自 问答

用node写了一个最简单的tcp服务器,代码如下:

var net = require('net');  
var chatServer = net.createServer();  
var i = 0;
chatServer.on('connection', function(client) {  
	console.log("---"+i++);
});  
chatServer.listen(2015);  

这个服务器在本地局域网的任何一台机器上测试时连接数能上万,而一旦将服务器部署到云主机上时,连接数到达170左右时就不在接受连接了。(此时服务器的性能和带宽都还很空闲,测试了ucloud和阿里云的主机都是如此。服务器是ubuntu 14.04 server x64)

基本排除客户端和网络的问题,因为我在同一台云服务器上用Python也写了一个tcp服务器,用同样的客户端连接能达到至少1K的连接。

实际上,我是在使用libuv的时候发现这个问题的。

请问有人遇到过类似的情况么?

4 回复

Linux 的 limit 数量改下

@ldcsirtest2012 感谢回复,limit数已经改过了,并且python的服务器可以超过这个数达到正常期望的连接数。所以应该不是系统最大连接数限制。

你看看跟防火墙有关系吗 阿里盾什么的

@yanglinnie 我也怀疑这个,但是尝试关闭了一些安全措施仍然没用,换云换系统结果都一样,node版本也尝试了v0.10.x,和v4.x,如果你有能用的云服务器能帮我测试一下,我感激不尽。

回到顶部