我有两个 WCF 应用程序通过命名管道进行单向通信。一切都很好,除了一件事:通常,请求/响应周期需要零(边际)时间。但是,如果有一个时间跨度,比如说,半分钟没有任何通信,请求/响应会增加到 ~300-500 毫秒。
我环顾了一下网络,我想到了使用心跳/ping 机制来保持通信通道繁忙的想法。通过反复试验,我发现每 10 秒执行一次请求时,响应时间保持在较低水平。从大约 15 秒的间隔开始,“打嗝”响应时间开始出现。
现在我想知道这种现象是从哪里来的。我尝试将双方所有可想象的超时设置为 > 1 分钟,但这没有帮助。
谁能解释那里发生了什么?