我们在应用程序的 application_start 阶段做一些缓存操作。因此,当应用程序池重新启动时,所有缓存都将消失。是否可以在应用程序池重新启动时触发 application_start 或者您有更好的想法来解决这个问题?
问问题
11090 次
2 回答
5
您可以使用Application Initialization for IIS 7.5,它借用 IIS8 的功能,或者如果您使用的是 ASP.NET 4.0 +,则应用程序自动启动。
对于 ASP.NET 2.0 i 3.5 有一个 IMO 有点骇人听闻的解决方案,您可以在事件日志中记录应用程序池回收,然后在事件日志中设置将在该事件上执行的任务,这里是详细信息
于 2012-05-16T18:00:55.560 回答
0
Application_Start 仅在第一次请求时调用。如果没有请求,我不确定缓存一些东西是个好主意。
我会在第一个请求时简单地加载缓存。
您的 CacheManager 可以决定是否需要自动加载它的数据。
你害怕第一个请求会慢吗?
于 2012-05-16T17:26:14.467 回答