Nginx的前端,Apache的后端,太多的时间等待连接

我使用Apache作为后端与suPHP和mod_sec和nginx作为前端代理。

到目前为止,这种方法运行良好,但由于某种原因,Apache突然产生了很多进程,导致CPU负载增加了很多。 我已经减less了worker_connections和所有的超时怀疑有人正在锤击服务器太多,如机器人等,但问题依然存在。

当CPU负载上升时,我检查了Time_Wait连接,并且有一点我有了5000 TIME_WAIT。 CPU负载正在通过屋顶。

任何想法除了以外我还能做些什么:

echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse

更新:tw_reuse有一点帮助,但我必须分析一下。 还有什么我可以尝试获得更多的信息?

首先分析nginx访问日志!

如果来自真实用户的请求很多,则需要configuration或升级服务器。

如果这是僵尸或错误的parsing器,你需要阻止他们,并调整你的系统参数。

没有发现问题之前,不要更改任何的sysctl参数。