wcfsoap服务don';t返回HTTP消息体

wcfsoap服务don';t返回HTTP消息体,wcf,azure,soap,Wcf,Azure,Soap,你好 我们有一个在IIS、Azure和Web角色下运行WCF SOAP服务的生产部署 我们最近注意到一些请求显示了一种奇怪的行为,我们无法解释也无法理解 在某些情况下,似乎会处理请求,将HTTP头返回给客户端,但不会返回任何消息体。从请求开始大约120秒后,连接将断开 HTTP头包含的内容长度似乎是正确的 似乎有10%的请求是这样的 我们试图在测试中复制,但它似乎只发生在非常高的负载下 我们尝试了流式广告缓冲传输模式,没有发现任何差异 我们已手动将WCF诊断跟踪添加到其中一台服务器。没有记录错误

你好

我们有一个在IIS、Azure和Web角色下运行WCF SOAP服务的生产部署

我们最近注意到一些请求显示了一种奇怪的行为,我们无法解释也无法理解

在某些情况下,似乎会处理请求,将HTTP头返回给客户端,但不会返回任何消息体。从请求开始大约120秒后,连接将断开

HTTP头包含的内容长度似乎是正确的

似乎有10%的请求是这样的

我们试图在测试中复制,但它似乎只发生在非常高的负载下

我们尝试了流式广告缓冲传输模式,没有发现任何差异

我们已手动将WCF诊断跟踪添加到其中一台服务器。没有记录错误。消息跟踪显示在超过18秒内没有处理任何请求,这对我们的系统来说很好

任何帮助都将不胜感激

比尔,
Hanan

因为您怀疑这可能是一个性能或可伸缩性问题。要深入了解这一点,您首先要通过

  • 以非常轻的负载重新测试场景,以确保代码和业务功能正确实现

  • 一旦您确保系统开发正确,然后跳转到可伸缩性测试,这将为您提供一些数据,以确定基准测试以及在伸缩过程中系统的行为(如果存在任何此类情况)

    进行可伸缩性测试是为了线性地增加负载,首先确定部署的系统或环境能力(CPU/内存/网络/IO…)是什么,以及何时应用可伸缩性规则。 第二,在扩展时,您需要不断提出一些请求,并确认扩展或缩小不会影响解决方案

  • 如果您确信系统的容量足以满足您的负载,那么进一步深入查看是否有任何底层数据库或子系统阻塞

  • 使用Perfmon工具度量分析监控服务器将使您更好地了解容量问题

    注意-如果您能够在响应中看到一致的错误行为,而不考虑负载,甚至一个小的手动请求也失败了,那么最好用不同的方法来观察它,而不是怀疑它的能力