我有一个没有很多访问者的 .net 网站,这意味着当它访问时,它必须启动该站点,这需要一些时间。
使网站保持活力和准备就绪的最佳方式是什么?我在 Internet 上找到了几个 ping 服务,但我不确定这是否是要走的路。但如果是,我应该使用哪一个?
主机服务确实拥有许多其他客户的 Web 应用程序。
如果您有权访问 IIS 配置,则可以执行以下操作。
在 IIS7 中。
在 IIS6 中。
更改应用程序池的设置将更改该池中运行的所有应用程序的设置,因此请小心。您可能希望为您的 Web 应用程序创建一个单独的池。
我知道这个线程很旧,但设置Idle Time-out
只会导致应用程序池工作进程保持活动状态。当你有一个回收政策(我认为你需要一个)时,无论如何它都会终止这个过程。=< .net 4 的唯一解决方案是调用页面。调用页面并不意味着您的应用程序已完全加载。例如,每个页面都可以有自己的程序集。
.net 4.5 及更高版本与 IIS 7.5 或更高版本相结合,具有执行此操作的内置功能:http ://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-应用程序初始化
对于解决方法,我总是使用计划作业/命令脚本来打开浏览器并在给定周期内访问该站点。
这与您使用的 .Net 和 IIS 的版本无关,但对于 4.0 和 IIS 7,您可以添加一个 Web 配置键来指示 IIS 在请求不频繁时保留该站点。
将这些添加到您的 web.config;
<add key="UseAppKeepAlive" value="false" />
<add key="AppKeepAliveUrl" value="" />
如果使用带有集成管道模式的 IIS 7,则必须在 AppKeepAliveUrl 中指定指向站点根目录的 URL,例如http://yourdomain.com/Default.aspx
请参阅以下文章以获取指导;
http://www.mojoportal.com/using-the-appkeepalive-task-to-speed-up-a-low-traffic-site.aspx