First Web API session request is very slow
我正在编写一个在IIS7上托管的ASP.NET Web API应用程序(无特殊配置)。
我的问题是,对于每个第一个请求(在新机器/新浏览器上/一段时间后...),都会有很长的延迟-即使在返回常量的请求上也是如此!
我已经读过有关"热身"脚本的信息,但这不是这里的问题。似乎Web服务器正在尝试创建会话,这需要很长时间。有什么建议吗?
编辑
我认为延迟是由每个新会话的工作进程创建引起的。现在的问题是为什么它这么慢,为什么Web服务器不重用活动的工作进程来处理请求?
我已将应用程序池配置为将工作进程限制为5个,且没有超时(设置为0)。这导致前五个会话在遇到第一个请求时很慢(我可以接受),而现在工作进程仍处于活动状态。但令人惊讶的是,请求有时又很慢!
如果使用Windows Server 2008 R2,则可以在应用程序池上
另一个原因可能是https。我们的网站可以在不使用https的情况下运行。第一页的延迟(5到15秒)仅在使用https时出现。这篇文章解释了https和修复程序的问题:
MCS团队发布的
https