首页 > 解决方案 > 底层连接已关闭,上周工作正常

问题描述

我有一些软件正在消耗我们控制的其他各种系统的信息。

运行我们软件的服务器之一突然停止与我们的两组服务通信,并给出错误:

The underlying connection was closed: A connection that was expected to be kept alive was closed by the server

在每个客户端服务器上,我们运行着两个软件,产品 X 和产品 Y。我们有两个正在运行的中央服务,它们连接到 - X 连接到服务 A 和 B,Y 仅连接到 A。

在我们拥有的每台服务器上,除了一台,一切都按预期连接和运行。

上周末,我们的一个客户遇到了问题,产品 X 无法连接到服务 B,Y 也无法连接到 A。X 仍然可以连接到 A 并从那里获取数据。

我已经创建了各种测试应用程序以在服务器上运行,这些应用程序将连接到服务、放置已知数据并取回已知数据。连接到服务 B 失败,但它可以连接到服务 A,尽管它是产品 Y 代码的几乎完全相同的副本(主要代码相同,访问数据库以获取设置的代码已替换为硬编码测试值)

我们托管这两项服务的服务器上没有任何变化。我们被告知客户端服务器上没有任何变化。在网络上的其他地方进行了防火墙更改,以阻止对一台服务器的 HTTP。我们的服务在 HTTPS 上,我假设防火墙规则会影响所有 Web 服务访问,而不是我现在拥有的一致的混合行为。

客户端上的软件针对.NET 4.5,服务都是.NET 4.0

我们已经对其他客户端进行了测试,但他们没有遇到任何问题。

到目前为止我已经尝试过:在其他服务器上进行测试(它们很好)测试来自受影响服务器的连接(可靠地有一个测试通过和一个测试失败)Google/StackOverflow(很久以前关于 .NET 1.1 的许多帖子)

标签: vb.netweb-servicessoaphttpsconnection-close

解决方案


推荐阅读