【问题标题】:IIS 10 Application Pool stops responding with PHP REST APIIIS 10 应用程序池停止响应 PHP REST API
【发布时间】:2018-09-07 02:42:04
【问题描述】:

我有一个基于 php 的 REST API 运行在安装在带有 IIS 10.0 的 Windows Server 2016 上的 Web 服务器上。 Web API 正在为许多员工使用的应用程序提供服务。该应用程序可以每分钟向服务器发出请求,有时一分钟多次,所以在

每隔几天,有时一天多次,api 停止响应,唯一的恢复方法是停止并启动应用程序池。

事件查看器中没有与之相关的消息。 PHP 日志中没有错误。 API 停止响应时进行的最后一次调用与之前多次进行的调用相同。

我不知道接下来要寻找什么以找出可能导致问题的原因。应用程序池设置或 PHP 中是否有任何我可能错过的配置?向 API 发出的请求数量是否会成为问题(目前它似乎应该处理它,我们说的是最忙时每 2-3 秒发出一个请求)?

任何关于寻找什么的建议将不胜感激。

【问题讨论】:

  • w3wp.exephp-cgi.exe 的挂起转储可能有助于确定罪魁祸首,blog.lextudio.com/… 但由于需要技术经验,我认为您并不容易追求。通过support.microsoft.com 打开支持案例并寻求指导。我认为下面的答案也无济于事。

标签: php iis application-pool


【解决方案1】:

您的 API 可能多次崩溃并触发了快速故障保护。它可以防止失败的应用程序池进入连续的崩溃循环。当应用程序失控可能导致服务器过载时,这很有用。 通常,最好查看应用程序代码来解决崩溃问题,但您也可以通过右键单击应用程序池>高级设置>快速故障保护>(启用/禁用)来禁用快速故障保护。

【讨论】:

  • 谢谢,我今晚尝试禁用 Rapid-Fail。希望它能解决一些问题。我不确定我是否理解 API 如何在 PHP 错误日志或事件查看器中没有任何错误的情况下崩溃
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-09-15
  • 2011-03-10
  • 2010-10-31
  • 2014-11-14
  • 2022-12-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多