这是来自 munin 的图表,可能会有所帮助
这也是我的http.conf
:
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 40
ServerLimit 2048
MaxClients 2048
MaxRequestsPerChild 8000
</IfModule>
PHP 在几毫秒内生成页面,但我不知道为什么客户端无法正确接收它。您还可以看到连接图女巫在最后几分钟下降。在那一刻,我几乎无法在我的网站上加载任何页面。
我从网络的角度看到太多 TIME_WAIT=9.76K(我不确定什么是保证的意思)。time_wait 是您的系统由于许多 tcp 连接反复打开和关闭而耗尽套接字的情况。你可以使用 netstat -an 确认。您可以调整这些参数
tcp_tw_recycle - BOOLEAN
启用快速回收 TIME-WAIT 套接字。默认值为 0。未经技术 专家
的建议/请求不得更改。
不建议启用此选项,因为这会在使用 NAT(网络地址转换)时出现问题。
tcp_tw_reuse - BOOLEAN允许在 从协议角度安全的
情况下为新连接重用 TIME-WAIT 套接字。
默认值为 0。未经技术 专家
的建议/请求不得更改。
但在此之前进行 tcpdump 并检查新连接,如果需要这些连接,还要与您的应用程序团队确认。