欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > php >内容正文

php

php丢弃,在IIS 7.5中,PHP吓坏了(连接丢失,连接被丢弃)

发布时间:2025/3/21 php 28 豆豆
生活随笔 收集整理的这篇文章主要介绍了 php丢弃,在IIS 7.5中,PHP吓坏了(连接丢失,连接被丢弃) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

我在IIS和

PHP(加上一个com dll)方面遇到了一些问题. COM dll经常崩溃,但我认为问题不是由于那个(我已禁用快速失败保护),因为dll总是崩溃,而问题是在三周前我们达到大约15.000个用户/天时开始的.

会发生什么是突然所有.php文件停止响应,服务器只能提供静态.htm文件,这表明php(php-cgi.exe)存在问题.

这几乎总是发生在高峰时段(3-4-5PM),当谷歌分析显示180-220“在线用户”.当这种情况发生时(我的意思是骗了我的意思)我可以在服务器的任务管理器中看到,通常10-12个php-cgi.exe进程,它们最多可以处理30或40个php-cgi.exe进程(~30 MB RAM每个),我想这是因为php-cgi.exe停止处理请求.该服务器总共有8GB RAM.

错误日志包括connection_abandoned_by_regqueue和connection_dropped,如果我不手动重启IIS或defaultapppool,错误将在大多数情况下转为defaultapppool不可用503

一个问题是,在事件查看器中,我从来没有从WAS收到defaultapppool被禁用的消息,因此我可以将任务(重新启动池)附加到它,并且在IIS管理控制台中,我从未将defaultapppool视为已禁用,尽管事实上它在日志中显示为禁用.

我一直在玩超时,但似乎从未得到过正确的结果.

我目前的理论是:

1)PHP对许多用户(Windows,IIS)感到不满,无法处理它

2)当许多用户在线时,.dll的崩溃会导致麻烦

3)php iis兼容性并不是很好的大量,虽然我不相信15k /天是太多的用户.我应该注意,大多数请求需要50-300毫秒才能完成.

php版本是通过WebPI安装的5.3.19,windows版本是windows 2008 R2 64bit.

出于一些奇怪的原因,记事本显示放弃/禁用查询的查询字符串,在httperr日志中以不可复制的十六进制形式(查询字符串为UTF8 – 希腊语),而在正常日志中,查询字符串既可见又可复制.截图提供如下.

我还提供了第二个截图,其中包含当前设置

在第二个屏幕截图中是我当前的设置:1)启用php扩展,2)defaultapppool(网站运行的池)设置3)php fastcgi设置和4)php运行时限制.

http://img34.imageshack.us/img34/2531/o6d1.jpg

我今天调整的最后一个设置是每3分钟自动回收一次defaultapppool并禁用动态内容压缩.将会看到这将如何发展.

如果有人对解决方案有任何提示/想法,我会很感激!

先感谢您.

最佳答案 我可以建议转到5.3.27(5.3的最终版本),看看是否修复了它?在20到27之间修复的崩溃错误太多了.可能是明显的解决方案,但值得一试.

总结

以上是生活随笔为你收集整理的php丢弃,在IIS 7.5中,PHP吓坏了(连接丢失,连接被丢弃)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。