Apache许多httpd进程由我自己的服务器IP? 吃我所有的拉姆

那么我刚刚买了一个新的专用服务器,我没有Linux的经验,但我试图学习。

我已经testing了几天的服务器。 为了获得更好的性能,我改进了httpd.conf my.cnf。

我注意到我的服务器在几秒钟内达到MaxClient的值,显然我的网站开始加载非常慢。

所以我检查了networking,看看有多less个httpd进程被相同的ip打开:

# netstat -ntu | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n 

netstat结果显示来自我的服务器自己的IP地址的58个连接

我以为我的服务器可能在TCP SYN攻击下,但后来我意识到IP是我自己的服务器。 所以我真的不明白是怎么回事

服务器很好,响应很好,内存使用率为30%,CPU使用率为15%,突然我自己的服务器同时打开了很多的httpd进程,每个进程占用我总内存的1.5%。 所以它从40个客户到120个客户,只需要几分钟的时间。

如果你们对我有任何的build议,我将非常感激,我一直在使用Linux只是在过去的三天。 在这一点上,我有点失落。

它看起来不像Linux问题,看起来像是一个Apache问题。

你的日志说什么?

这是一个网站,曾经工作,现在正在移动到另一台机器,或者你正在build立一个新的? 如果是旧网站,从你自己的IP连接到你是正常的?

netstat -ntu --program会告诉你什么程序连接到端口80。

我想你的网站托pipe东西比静态页面。 尝试find重现问题所需的最低configuration(模块/虚拟主机/应用程序)。 这将帮助您缩小故障排除范围。

尝试禁用mod_status(特别是ExtendedStatus指令)并查看从您自己的服务器到自己的连接数是否下降,我认为ExtendedStatus从本地主机访问apache以确定它的一些计数器。