0

我有一个 IIS 托管的 WCF 服务和一个客户端 Windows 应用程序,在当天第一次使用时,它需要一段时间来响应第一个服务调用。我认为这是因为 IIS 关闭了一段时间内未使用的服务(延迟是服务的重新启动时间)。我想知道是否可以通过在我的应用程序启动时进行异步调用来缓解这种情况(只是为了让服务启动)。因此,在应用程序启动时,我创建了一个“即发即忘”的后台线程,它只是打开了与服务的连接。目的是当我的应用程序完成自己的启动并想要使用 WCF 服务时,线程将(可能)已经完成并且用户不会遇到服务启动延迟。

这合理吗?单独打开 WCF 服务的通道是否足以启动服务,还是我需要编写一些虚拟方法并调用它?

谢谢

罗斯

4

2 回答 2

1

检查您是否真的希望您的应用程序处理此任务并检查 IIS 的AppWarm-Up 模块,也许您可​​以在不向服务中添加代码的情况下使用它。

于 2012-07-10T11:13:28.827 回答
0

这合理吗?

这听起来对我来说不是一个好方法。如果您可以控制服务的托管方式,我建议您自行托管。

于 2012-07-10T13:26:14.757 回答