我们在IIS 6中托管WCF服务。当服务的第一个请求出现时,ServiceHostFactory创建ServiceHost。在ServiceHost的OnOpening()方法中,我们将一些数据加载到实现为静态属性的缓存中。如何在回收ApplicationPool后“预热”(填充缓存等)在IIS中托管的WCF服务?
由于加载数据需要大约1分钟,我们不希望“当日的第一个用户”等待缓存被填充。问题在于,ServiceHost以及缓存因ApplicationPool的每个循环而终止。是否有可能检测到回收并重新填充缓存?还是还有其他的最佳做法?我不能相信我们是唯一有这个问题的人...
在此先感谢!
可能的复制(IIS6):http://stackoverflow.com/questions/2063461/iis-web-applications-warmup – chilltemp 2010-09-01 18:45:09
见http://www.codeproject.com/Tips/508713/Custom-WCF-网络服务 - 热身 - 无论服务 – abatishchev 2013-03-10 07:30:09