在典型的客户端服务应用程序中,服务是 WCF,如何使用服务引用?
例如,您是为每个调用单独实例化服务,还是打开一个并在客户端应用程序的整个生命周期中保留它?(当我提到“实例化服务”时,我的意思是实例化由 svcutil 创建的服务对象)
现在我们在客户端使用了一个服务实例,因为这似乎比每次调用都创建、打开和关闭服务要快,但是现在我徘徊是否可以?这种方法的主要问题是发生超时(或者我们必须打开会话 10 小时)、连接中断等,我们总是必须通过通道执行“IsAlive”以确保一切正常......
如果它有任何相关性,则该应用程序是单线程的,并且身份验证是自定义构建的(通过将身份验证令牌插入标头)。绑定是basicHttp(或ws,对于这种情况并不重要)。