首页 > 解决方案 > Windows 应用程序丢弃所有 WCF 和 TCP 连接

问题描述

我有一个 Windows 服务,它主要是用于数百个客户端的 WCF 主机(net.tcp 绑定)。它承载许多不同的 WCF 服务,其中一些是双工的。

它还具有到一个特定客户端的纯 TCP 连接。

更复杂的是,该应用程序加载了第三方 SDK,该 SDK 进一步建立了与其他服务器的 TCP 连接。

随着客户端的扩展,我现在发现它随机丢弃了所有网络连接:更具体地说,所有 WCF 通道都停止响应并且普通 TCP 连接停止响应。WCF 通道不会断开连接,而是保持连接状态,直到最终超时(一分钟后)。

客户端最终能够重新建立连接,并且 TCP 连接也恢复了。

我怀疑应用程序可能太忙而无法为所有连接提供服务,并且 TCP 缓冲区可能已满。但如果是这种情况,我认为它会响应更慢 - 但事实并非如此,所有连接同时停止并且不会恢复(应用程序很容易能够在 1 分钟内处理所有待处理的请求暂停)。

我不希望任何人直接解决这个问题,因为它相当模糊,我无法提供示例代码,但我希望我能找到一些关于如何调试问题的提示。

标签: .netwindowswcftcp

解决方案


推荐阅读