【发布时间】:2020-05-25 13:56:38
【问题描述】:
第一次请求调用 Web API 的响应时间很长!
尽管我们更改了 WEB API 池的以下设置 - 然后我们注意到等待时间的次数明显减少 - :
StartMode 到 AlwaysRunning
空闲超时(分钟)到 0
但是第一次请求仍然有很长的响应时间,特别是在早上(工作时间之前)或周末,这是什么原因造成的?您建议的任何缺少的设置?我们是否需要更改任何其他设置以自动运行池? -下面的高级设置快照-
在我看来,IIS 或池是如何定期回收的!但是我正在考虑将 StartMode 更改为“AlwaysRunning”将自动运行 Pool 并保持它在回收或关闭后继续运行!
【问题讨论】:
-
使用性能分析器来分析您的 Web 应用程序的初始化过程。这应该可以解释为什么响应第一个请求需要这么长时间,然后您可以将其减少到适度的数量。对 IIS 设置的所有 hack 只是隐藏了真正的问题。
-
@Lex Li 用户期望几乎是即时加载/响应。您所说的是任何几乎不能立即启动的应用程序都是真正的问题。我觉得真正的问题是,在低流量情况下,IIS 的这种默认行为是有缺陷的,需要修改。
标签: iis application-pool webapi