我有一个使用回调操作来回调其客户端的服务。服务中断时是否有通知客户?当客户端在回调期间关闭时会引发异常,但是如果服务中断,订阅将丢失,但客户端不会得到通知。
WCF是否支持一些心跳操作来检查服务的状态?
由于
答案 0 :(得分:0)
不,没有“检查此服务呼叫是否会成功”的方法。
您需要调用该服务并准备好处理服务调用期间发生的任何异常。
检查服务可用性确实没有可靠或有用的方法。心跳可以检查的一切就是你现在可以调用你的服务方法 - 但是过了一小会儿,这个连接可能就消失了(电缆已被拔掉或被切断,服务器崩溃了 - 出现问题的可能性是无尽......)。它无法检查是否所有必要的后台服务和数据库等都可用。
所以实际上,这样的心跳检查毫无意义。只需致电服务,希望最好,并做好最坏的准备!将您的服务调用包裹在良好的异常处理中,然后继续使用它。