如何在第一次请求发生之前初始化WCF服务?

时间:2013-03-04 12:35:49

标签: c# .net wcf iis

我有一个WCF服务,它使用位于数据库中的各种配置参数,以及一个缓存以获得更好的性能。现在我有一个包含此信息的Singleton,并在第一次调用Web服务时以延迟加载行为进行初始化。

最近对缓存进行了扩展,因此初始化需要一些时间,当然会导致第一个服务请求的响应时间更长。

那么在第一次调用发生之前(可能是在应用程序池启动时),最有效的方法是对服务进行某种急切的加载初始化?

2 个答案:

答案 0 :(得分:1)

刚刚完成了我的旧问题,发现之前已经回答了这个问题。如果你偶然发现这个,请看这里 thread

答案 1 :(得分:0)

不要在asp.net应用程序中托管服务,而是在IIS中使用自托管进程(即控制台应用程序)或(甚至更好)WAS(Windows激活服务)服务。

这更可靠,您可以在第一次客户呼叫之前初始化服务。

有关详细信息,请参阅MSDN