美好的一天。
我们有一个PRODUCTION部署,在IIS,Azure,Web角色下运行WCF SOAP服务。
我们最近注意到,有些请求显示出一种奇怪的行为,我们无法解释或理解。
似乎在某些情况下会处理请求,HTTP标头会返回给客户端,但不会返回任何邮件正文。从请求开始大约120秒后,连接被丢弃。
HTTP标头包含似乎正确的内容长度。
似乎大约有10%的请求都是这样的。
我们试图在测试中重现,但似乎它只发生在非常高的负载下。
我们尝试过Streaming ad Buffered TransferMode,没有看到任何差异。
我们已将WCF诊断跟踪手动添加到其中一个服务器。没有记录错误。消息跟踪显示超过18秒没有处理任何请求,这对我们的系统来说很好。
非常感谢任何帮助。
BR, 哈南
答案 0 :(得分:0)
您怀疑它可能是性能或可伸缩性问题。要深入研究,首先要通过
确认使用非常轻的负载重新测试方案,以确保正确实现代码和业务功能。
一旦确定系统正确开发,然后跳转到可伸缩性测试,这将为您提供一些数据来确定基准以及系统在扩展过程中的行为(如果有任何此类事情)。
进行可伸缩性测试是线性增加负载,首先弄清楚部署的系统或环境功能(CPU /内存/网络/ IO ...)是什么以及何时应用扩展规则。 其次,当您进行扩展时,您需要不断提出一些请求并确认放大或缩小不会影响解决方案。
如果您确定系统的容量足以满足您的负载需求,那么请进一步深入研究以查看是否存在任何基础数据库或子系统。
使用Perfmon工具指标分析监控服务器可以让您更好地了解容量问题。
注意 - 如果您能够看到响应的一致错误行为,无论负载如何,即使一个小的手动请求失败,那么最好以不同的方式查看它而不是怀疑其容量。