如何设置IIS以使我的应用程序保持活动状态?

时间:2009-04-23 11:44:57

标签: iis-7

我认为我的Web应用程序会在一段时间后关闭。

如果我在5分钟内没有使用该应用程序,它将返回一个新会话。会话超时设置为720分钟,因此不会出现问题。

它可能是应用程序池中的设置还是类似的东西?我认为这是某种资源管理。我使用IIS 7.0

6 个答案:

答案 0 :(得分:39)

IIS在属性中具有一项功能,您可以在此时间间隔内停止回收IIS

  1. 转到“IIS管理器”
  2. 选择“应用程序池”您要管理的实例。
  3. 选择“高级设置”操作
  4. 在“回收”下,将“常规时间间隔”设置为0,表示应用程序池不回收。

答案 1 :(得分:16)

  1. 打开" IIS管理器"
  2. 选择"应用程序池"您要管理的实例
  3. 选择"高级设置"
  4. 在"(一般)"并设置"启动模式" to" AlwaysRunning",这意味着应用程序池始终保持ASP.NET应用程序运行
  5. PS。如果您希望自动加载ASP.NET应用程序,可以按照以下步骤操作:

    1. 打开" IIS管理器"
    2. 选择您要管理的应用
    3. 选择"高级设置"
    4. 在"(一般)"并设置" Preload Enabled" to" true",这意味着应用程序将在部署后自动加载。
    5. 有关详情,请访问:Use IIS Application Initialization for keeping ASP.NET Apps alive

答案 2 :(得分:7)

我们遇到了同样的问题,一个网络服务必须以这样的方式保持在线状态,即如果它变得陈旧,我们就无法承担启动它所涉及的延迟。

我们写了一个非常简单的Windows服务,每隔3分钟醒来一次,并请求@Wayne建议的页面。工作就像一个魅力。

答案 3 :(得分:3)

最简单的方法是使用脚本打开与网站的连接并请求您的页面。有关详细信息,请参阅Joel Oleson's Blog

您可以使用Windows调度程序每隔x分钟运行一次。

这可能是Sharepoint特定的,但您可以适应您的要求。

更新:试用此版本:WarmUpServer.zip

答案 4 :(得分:0)

应用程序池会进行回收,并且在执行时间或请求数量等方面达到某些限制后会重新启动,这些限制可以在IIS上设置。

IIS 7实际上是在管道模式下运行所以我们还不知道它是新的东西,但你可以做的就是让你的应用程序保持活着状态是从其他机器设置一个触发器,它将连接你的服务器每5个或者10或60分钟,然后尝试获取一个html页面。

http也可以有各种服务器监视器。

答案 5 :(得分:0)

配置IIS池失败后。我推出了这个简单的Windows服务。 github code

它可以节省一些时间。