我对WCF客户端代理有严格的超时要求。目前,我将所有basicHttpBinding
超时(Open
、Close
、Send
和Receive
)设置为1秒。然而,当我的客户端和服务之间的连接中断时,超时发生之前总是需要21-22秒左右。
我认为这可能是一个缓慢/失败的DNS查找,但用IP地址替换端点URL中的主机名没有任何效果。
这是预期的行为吗?我应该自己用应用程序计时器之类的东西来管理这些超时要求吗?
这个SO问题的答案解释了您为什么会遇到这种情况。
如果超时对您来说很重要,您将需要自己实现超时,除非/直到Microsoft能够被说服更改WCF实现。