c# - IIS 8.5 上的 ASP.NET MVC 5 网页总是闲置

标签 c# asp.net-mvc iis-8

我在 IIS 8.5/Windows Server 2012 R2 上托管了一个 ASP.NET MVC 5 网络应用程序。

对于应用程序池,我设置了以下自定义配置参数

preloadEnabled = "true"
startMode = "AlwaysRunning"
idleTimeout = 0

Web 应用程序在约 20 分钟后仍会在没有请求的情况下终止,并且它需要约 30 秒才能再次可用。

是否还有其他选项我忘记调整/打开/关闭?

最佳答案

我在 Server 2008R2 上运行 IIS 7.5,但我们的情况应该相似。我还希望“始终运行”并且不希望 w3wp.exe 在闲置后死掉。我的问题是预加载没有触发,所以你的里程可能会因以下而异。

您的应用程序池内容看起来不错。我还要补充一点,如果您的目标是永久运行应用程序,您应该关闭回收。让我们确认设置是否正确!

  • 打开 IIS 并单击您的计算机(或相关网络服务器的主机名)。在管理区域下的右侧 Pane 中,单击“配置编辑器”。
  • 在“部分”下拉列表中,选择 system.applicationHost/applicationPools。第一项可能是一个集合,其中 count=something。单击该行以显示...省略号,然后单击它。
  • 点击您的应用程序池,确保您在这里的任何地方都看不到 20 分钟。您需要展开 processModel 节点才能看到它。还要确保 startMode 始终处于运行状态。
  • 再次执行项目符号 1 和 2,但这次转到 sysetem.applicationHost/sites。点击第一项上的省略号以查看您的网站,然后点击您关心的网站。
  • 在底部 Pane 中,您会在顶部看到另一个收藏项。进入那个。选择您希望永远存在的应用程序。检查自动启动和预加载内容并确保两者都设置为 True。

关于c# - IIS 8.5 上的 ASP.NET MVC 5 网页总是闲置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40845181/

相关文章:

javascript - 通过 jquery 禁用按钮

asp.net - 如何更改我的共享托管提供商上的空闲超时 asp mvc 应用程序?

c# - 隐藏已编译应用程序的可执行代码的做法

c# - 如何让Automapper在非外键的Id字段上通过inner join抓取相关记录?

jquery - 突出显示或更改 @Html.DropDownList 具有焦点时的边框或背景

asp.net - RotativaPDF css不在服务器上工作

php - 为什么 CodeIgniter 会耗尽允许的内存大小?

regex - IIS 重写规则以在包含特定特定查询字符串时删除查询字符串

c# - .net 中的网络打印机监控

c# - 删除 Entity Framework Code First 中的联结表记录 (M :M)