我有一个debian VPS与2 GB内存 ,这是非常好的处理大事情。 然而,最近我的网站经常下滑,我仍然不能确切的原因。
起初我有512MB内存,这实在太小,无法处理我的网站。 正如我在日志中看到的,该网站至less使用了450MB。 我升级到2GB希望能够解决一切,但它没有做任何事情。
然后我想这可能是我的网站代码运行一个巨大的过程,因为它实际上是。 所以我重build了一个简单的系统来减less正在完成的巨大进程。 不过,同样的问题依然存在。
现在我想这可能是一些访问者的问题。 但是甚至没有30个活跃的访问者,甚至更less,而2GB的内存应该很好地处理它们。 在查看网站停止使用时的RAM使用情况后,大概是2GB的400-500MB,所以对我来说这确实不是RAM的问题。
所以我现在很困惑 还有什么呢?
Apache的错误日志都是关于我的PHP文件的通知和不重要的东西,这与Apache无关,但我相信它只是一个Apache的问题,因为SSH连接和完美的工作,而网站是closures的。
什么是预期的问题或任何其他检查? 这可能是访问者使用Apache的限制吗?
虽然我几乎没有关于TCP握手或其他networking问题的信息,但看起来(通过您的评论 ),在apache.conf中有超过10个用户试图同时处理,并且您的MaxClients指令也是如此低处理您的stream量。 我会增加数量。 由于我不知道你的服务器收到了什么样的stream量,所以我将这个值设置为至less50,如果负载testing出现问题,那么增加它。 您可以使用免费服务(如“ 负载影响”)运行负载testing 。 [没有从属关系]
从http://httpd.apache.org/docs/2.2/mod/mpm_common.html#maxclients :
MaxClients指令设置将要服务的同时请求数量的限制。 通过MaxClients限制的任何连接尝试通常都会被排队 [emplasis mine],直到基于ListenBacklog指令的数字。 一旦subprocess在不同的请求结束时被释放,连接将被服务。
你的连接似乎是挂起的,因为它们正在排队等待处理,尽pipe我不怀疑你的服务器可以处理一点。