|
linux服务器部署了一个tcp服务,需要进行并发压力测试 看看服务器能支持多少个tcp长连接 预计会有50w个连接需要设置linux 不然是无法支持这么多连接的 如果达到这个值是无法建立新连接的 报错信息一般为 too many open files 1 , fs.file-max linux系统能打开的文件句柄数量 这个要增大 默认(65535)肯定是不够的查看命令 sysctl -a | grep -a "fs.file-max"设置 echo "fs.file-max = 2100000" >> /etc/sysctl.conf //设置为110w sysctl -p //立即生效 2 ,ulimit 控制用户级别能打开的文件句柄数量 查看命令 ulimit -n 设置 ulimit -n 1000000 //设置为100w 临时生效 永久生效方法 vim /etc/security/limits.conf * hard nofile 1000000 //不要超过一百万 值要小于 nr_open * soft nofile 1000000 重启服务器永久生效 * 如果要超过一百万 还需要设置一个 /proc/sys/fs/nr_open 进程级别能打开的文件句柄数量 (linux内核2.6.25及之后 之前是无法设置的) 查看 cat /proc/sys/fs/nr_open 默认值为 1048576 即1024*1024 设置 echo "fs.nr_open = 1500000" >> /etc/sysctl.conf 要小于fs.file-max sysctl -p 使修改生效命令 查看tcp连接数命令 netstat -an | grep "ESTABLISHED" | wc -l 看可不可以达到一百万 查看tcp连接数量命令(windows) netstat -an | find "ESTABLISHED" /c 但是在高并发情况下 连接一直增长不上了(2秒内有超过6w个客户端连接过来) netstat -s | grep "SYNs to LISTEN" 查看tcp丢包数量 多次查看 发现丢包数量一直在增长 设置: echo 409600 > /proc/sys/net/ipv4/tcp_max_syn_backlog echo 409600 > /proc/sys/net/core/somaxconn
来源:https://www.cnblogs.com/fly-fly-fly-fly/p/18126307
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
|