PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php-Apache的页面加载时间非常长大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我的Drupal 6网站已经运行了好几年,但是最近却经历了间歇性的极慢速度(10-60秒页面加载).缓慢的几个小时,然后是正常(4-6秒)的页面加载时间.页面始终加载无错误,只是有时需要花费很长时间.

我的设置:

> Windows Server 2003
> Apache / 2.2.15(Win32)Jrun / 4.0
> PHP 5
> MysqL 5.1
> Drupal 6
> ColdFusion 9
> Vmware虚拟环境
>企业防火墙后面的DMZ
>流量:1-3次/峰值

故障排除

> Apache错误日志中没有适用的错误
> drupal事件日志中没有错误
> Drupal开发模块在366.23毫秒内显示242个查询,页面执行时间2069.62 ms. (所以看起来查询PHP脚本不是问题)
>没有异常高的cpu,内存或磁盘IO
>冷融合应用程序以及drupal之外的其他静态页面加载速度也很慢
> webpagetest.org测试显示到第一字节的时间非常长

问题似乎出在Apache响应请求上,但以前我只在100%cpu负载下看到过这种情况.仅通过资源监视来判断,似乎没有发生任何事情.

这就是问题所在-大约一半的站点访问来自我们的LAN,但是如果我禁用防火墙规则并阻止来自网络外部的访问,则内部(LAN)访问(1000台设备)速度很快.但是,一旦外部访问恢复,该站点就会瘫痪.

Apache配置?爬虫/机器人?攻击者?我已经走到尽头了,我应该在哪里确定问题所在?

– – – 编辑: – – –

随附的是来自webpagetest.org的瀑布图,显示了15秒的加载时间.我看过的时间长达几分钟.同样,服务器在很多时间都可以正常运行.绿色区域表示浏览器已发送请求,正在等待接收来自服务器的数据的第一个字节.这当然是后端延迟,但是令人困惑的是在这种缓慢状态下几乎没有使用cpu.

(代表人数不足,无法发布图片,请参阅https://webmasters.stackexchange.com/questions/54658/apache-very-high-page-load-time

– – – 编辑 – – –

从Apache的角度来看-这可能是ThreadsPerChild问题吗?

解决方法:

经过大量研究,我可能已经找到了解决方案.如果我是正确的,那是一个Apache配置问题.具体来说,是“ ThreadsPerChild”指令.查看… http://httpd.apache.org/docs/2.2/platform/windows.html

事实证明,此指令在我的配置中根本没有设置,因此认为64.我通过在任务管理器中查看第二个httpd.exe进程的线程数来确认这一点.当服务器的连接数超过64个时,多余的请求仅需等待线程打开即可.我在httpd.conf中添加了ThreadsPerChild 150.

另外,我启用了apache状态模块
http://httpd.apache.org/docs/2.2/mod/mod_status.html

…除其他外,它使您可以随时查看服务器上活动请求的总数.立即,我可以看到多达80个活动请求的峰值.时间会证明一切,但是我相信这将解决我的问题.到目前为止,有30个小时没有打h.

大佬总结

以上是大佬教程为你收集整理的php-Apache的页面加载时间非常长全部内容,希望文章能够帮你解决php-Apache的页面加载时间非常长所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: