.net - Web 场服务器使用的 WCF。错误 : The socket connection was aborted

标签 .net wcf sockets binding tcp

我在 ServerA 上部署了一个 WCF 服务。我正在使用 tcp 绑定(bind)。

我还有一个由 ServerB 和 ServerC 组成的网络场。

当我在任何服务器 ServerB 或 ServerC 上部署使用 WCF 服务的应用程序时,在尝试调用我的服务时出现错误。我添加了跟踪,这是我得到的错误:

The socket connection was aborted. This could be caused by an error processing your message or a receive timeout being exceeded by the remote host, or an underlying network resource issue. Local socket timeout was '10675199.02:48:05.4775807'.

我尝试从我的电脑上使用相同的服务,但它工作正常。我还尝试将应用程序部署到不在网络场上但在同一网络上的其他服务器上,并且我也能够使用我的服务。

所以我发现问题与服务器 B 和 C 在网络场上有关。这只是一个猜测,但我找不到此行为的任何其他原因。

感谢任何帮助。 谢谢。

最佳答案

如果服务器位于负载均衡器之后,您可能必须执行以下操作(useRequestHeadersForMetadataAddress):

<serviceBehaviors>
  <behavior name="YourServiceBehavior">
    <useRequestHeadersForMetadataAddress />
  </behavior>
</serviceBehaviors>

关于.net - Web 场服务器使用的 WCF。错误 : The socket connection was aborted,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12726182/

相关文章:

c# - 了解 WCF 响应中的 xmlns 标记

node.js - 带有 socket.io 的 EC2

c - 在 C 语言中使用 poll() 作为 TCP 服务器

.net - 语句 "#pragma managed(push, off)"和 "#pragma managed(pop)"是什么意思?

WCF 服务错误 400 错误请求

c# - 当不能简单地重载时混合可选参数和参数

c# - 在 ServiceHost 中运行的 WCF 服务(控制台应用程序)

list - Golang - 链接到 id 的套接字片段以进行通知

html - 删除 &lt;title&gt; 标签内的引​​号

c# - 使用 Nuget 安装 neoj4 c# 驱动程序时出错