linux 服务器, 压测, tcp 长连接 并发到 26 万.
内存 CPU 都正常
已经建好的 tcp 连接都正常
就是无法新建 tcp 连接了
现象包括连 百度 都无法 ping 了
ping www.baidu.com
ping: www.baidu.com: Temporary failure in name resolution
新启动一个服务, 数据也无法发送了
基本等同完全无法访问网络了, apt update 之类的命令也全部报错失效
linux 服务器, 压测, tcp 长连接 并发到 26 万.
内存 CPU 都正常
已经建好的 tcp 连接都正常
就是无法新建 tcp 连接了
现象包括连 百度 都无法 ping 了
ping: www.baidu.com: Temporary failure in name resolution
新启动一个服务, 数据也无法发送了
基本等同完全无法访问网络了, apt update 之类的命令也全部报错失效
1
DinoStray OP 把压测的模拟器都关掉, 一切恢复正常
|
2
Comphuse Jan 7, 2020 |
3
codehz Jan 7, 2020
(听起来是因为文件句柄用光了
|
4
julyclyde Jan 9, 2020
你们的客户有 26 万吗
|
5
maxbon Jan 11, 2020
内核调一调,/etc/sysctl.conf
|
7
DinoStray OP 问题已经解决了, 把笔记在这里贴一下吧:
conntrack 限制 所有在内核中由 Netfilter 的特定框架做的连接跟踪称作 conntrack ( connection tracking ) 达到最大限制后, 会报错 nf_conntrack: table full, dropping packet 查看当前系统设置最大连接数 cat /proc/sys/net/netfilter/nf_conntrack_max 查看连接跟踪有多少条目 cat /proc/sys/net/netfilter/nf_conntrack_count vim /etc/sysctl.conf net.nf_conntrack_max = 2000000 临时生效 sysctl -p 永久生效, 还需额外操作 http://xy.am/2015/04/26/nf-conntrack/ 你只需要把 nf_conntrack 加到系统开机模块,就可以用 /etc/sysctl.conf 开机设置它了 echo "nf_conntrack" >> /etc/modules |