在窗户上的阿帕奇研磨停止

我们在Windows Server 2003上运行apache 2.2.18,当我们得到大量的访问者时,apache似乎变得缓慢而缓慢,然后磨砺成一个完整的立场。

任何人都知道这是为什么?

服务器是基于4gb ram的云

.conf文件位于这里pastebin.ca/2070217

阿帕奇是一只野兽。 开箱即用的默认设置,这是一个丑陋的野兽。 发布httpd.conf,这里的人会更好地给你相关的优化技巧。

定义“访问量高”?

你有没有检查日志?

基准你的服务器?

你确定这是Apache的悬挂的原因,而不只是一个基于Web的应用程序在Apache上运行?

恕我直言,你的问题缺乏适当的信息给出一个坚实的答案。

Windows上的Apache使用基于线程的模型,默认为64个线程,除非您更新这些值。 每个线程处理1个连接。

我的WampDeveloper Proconfiguration如下设置:

(C:\ WampDeveloper \ CONFIG \ Apache的\额外\的httpd-mpm.conf)

ThreadsPerChild 256 ThreadLimit 384 

然后确保KeepAlive已设置,但设置为低…

(C:\ WampDeveloper \ CONFIG \ Apache的\额外\的httpd-default.conf)

 KeepAlive On KeepAliveTimeout 1 

进行更改并重新启动Apache。

检查你的“/ server-status”和“/ server-info”URL(你可能需要取消注释httpd.conf中的某些行来启用这些行,如果你正在使用一些其他的wamp包)。

第一个URL将显示所有的连接和他们的状态。 第二个将显示加载的configuration值。

然后编辑php.ini并设置合理的输出缓冲值:

 output_buffering = 4096 

值“On”可能不会向客户端发送任何东西,直到脚本到达结束,并且看起来好像您的页面需要很长时间才能加载。

另请尝试:

  1. 使用mod_php而不是CGI
  2. 使用PHP操作码caching,如eAccelerator或APC。
  3. 注释掉httpd.conf中的更改:

启用MMAPclosures

EnableSendfileclosures

提供Win32DisableAcceptEX

请注意,速度减慢可能是由于写入/开发的PHP代码编写缓慢,或者每个Apache线程的大小都增加(通过PHP读取/传递的可下载文件将会这样做)。