[TCP] 单台linux服务器最多支撑的tcp最大连接数

  • A+
所属分类:linux技术
摘要

此处的限制是以下几个部分每一个tcp的网络连接也是一个socket文件 , 所以有文件句柄数限制

此处的限制是以下几个部分

每一个tcp的网络连接也是一个socket文件 , 所以有文件句柄数限制

系统级:当前系统可打开的最大数量,通过fs.file-max参数可修改
用户级:指定用户可打开的最大数量,修改/etc/security/limits.conf
进程级:单个进程可打开的最大数量,通过fs.nr_open参数可修改

 

ulimit可以临时更改  

 

如果上面的都打开到100万限制 , 那么就只剩下内存的限制

每条空的tcp连接大约消耗3.3k , 4G的内存可以支撑100万tcp连接

 

如果发送数据 , 每条连接至少还得分配4k的接收缓冲区或者更多 net.ipv4.tcp_rmem参数

root@VM-0-4-ubuntu:~# sysctl -a | grep rmem
net.ipv4.tcp_rmem = 4096 87380 5276832
net.ipv4.udp_rmem_min = 4096