.net - Windows 应用程序丢弃所有 WCF 和 TCP 连接
问题描述
我有一个 Windows 服务,它主要是用于数百个客户端的 WCF 主机(net.tcp 绑定)。它承载许多不同的 WCF 服务,其中一些是双工的。
它还具有到一个特定客户端的纯 TCP 连接。
更复杂的是,该应用程序加载了第三方 SDK,该 SDK 进一步建立了与其他服务器的 TCP 连接。
随着客户端的扩展,我现在发现它随机丢弃了所有网络连接:更具体地说,所有 WCF 通道都停止响应并且普通 TCP 连接停止响应。WCF 通道不会断开连接,而是保持连接状态,直到最终超时(一分钟后)。
客户端最终能够重新建立连接,并且 TCP 连接也恢复了。
我怀疑应用程序可能太忙而无法为所有连接提供服务,并且 TCP 缓冲区可能已满。但如果是这种情况,我认为它会响应更慢 - 但事实并非如此,所有连接同时停止并且不会恢复(应用程序很容易能够在 1 分钟内处理所有待处理的请求暂停)。
我不希望任何人直接解决这个问题,因为它相当模糊,我无法提供示例代码,但我希望我能找到一些关于如何调试问题的提示。
解决方案
推荐阅读
- javascript - 两个 jquery 点击计数器在点击处理程序之外一起工作
- python - 使用'in'语句的Python迭代'Nonetype'
- google-cloud-platform - 谷歌云对象在删除后仍然存在
- excel - 你能在vba中自动创建集合声明吗
- javascript - 强制一次重新渲染来测量 DOM 元素?
- javascript - 如何使用 JSDoc 验证/检查类型?
- java - 计算给定字符串中的字符数并打印
- r - 在 R 中重新排序和重新格式化表格
- javascript - 如何在一个页面中使用多个模式窗口
- javascript - 如何将数据从一个 js 文件访问到另一个文件?