7

我们在 IIS 7.5 目标框架 4.0 上部署了一个 Web 应用程序,该应用程序在第一次空闲几分钟时执行缓慢,然后按预期执行,每次应用程序空闲时都会发生这种情况。在提琴手的帮助下,我发现它的 TCP/IP 连接需要大约 21 秒的时间,而在随后的调用中,这个时间为 0。空闲超时也设置得很高,并且 IIS 设置中的连接超时也很高。服务器是 - Windows 2008 R2。事件查看器中没有与网站相关的任何内容。我们使用了表单身份验证,但在配置文件中也设置了大约 10 小时的超时时间。

任何人都可以指出应用程序空闲一段时间后影响响应时间的设置。注意 - 当部署在 LAN 中时,这可以正常工作,但是当部署在 LAN 之外或在单独的域中时,这个问题就开始了。

4

3 回答 3

4
  1. 问题

这是IIS应用程序池空闲超时的问题,默认设置为20分钟,20分钟后应用程序池关闭如果20分钟内没有请求,当20分钟后有任何请求再次启动时,问题是第一个访问应用程序池需要创建一个新的 w3wp.exe 工作进程,这很慢,因为需要创建应用程序池,需要加载 ASP.NET 或其他框架,然后需要加载您的应用程序。因此可能需要 20-30 秒或取决于应用程序内容的大小。

  1. 解决方案

所以为了避免这种类型的延迟,我们需要将空闲时间设置为 0。现在它总是会快速加载。

  1. 应用程序池设置

在此处输入图像描述

于 2016-06-21T06:25:40.950 回答
3

IIS 应用程序池在 30 分钟不活动后关闭。之后,当您发出请求时,IIS 基本上必须重新启动网站,这会导致您所描述的行为。您可以在 IIS 中更改网站的空闲时间来避免它。

您还可以查看 4.0 框架的自动启动功能。

于 2013-09-22T09:10:34.780 回答
0

好吧,有点晚了,但可能会帮助别人。我遇到了同样的问题,日志中没有任何内容,花了几天时间,然后查看网络适配器属性/配置/电源管理-选中了允许计算机关闭保存电源。未选中,问题已解决。

于 2016-12-20T20:51:20.933 回答