我有一个在IIS中托管的.NET Web服务。在过去的几年中,客户端一直使用该Web服务,并且当客户端处于慢速连接(例如GPRS)时出现偶然事件超时事件。另一方面,客户端有时必须将一些数据发布到另一个网页(ASP.NET Web应用程序的一部分),并且通常POST请求中的数据大小大于Web服务调用中的实际有效负载。但是,与web服务调用相比,POST请求要快得多。为什么Web服务调用比Web POST请求要慢
为了进一步建立这个测试网络服务,我使用一个方法和另一个网页创建了完全相同的操作,即接收100K并发回100K(随机字节),并且使用测试客户端调用Web服务方法以及在网页上发布了一篇文章,并使用同一个客户端得到了回复。从网络服务接收回复和从网络发布请求回复的差异是巨大的,即大约1200毫秒。为什么会这样? Web服务中是否有这样的配置会产生如此大的差异?它是否是SOAP调用堆栈?序列化/ Desrialization?
ok SOAP/XML可能是一个因素,我们正在讨论更多的数据传输和解析的开销可能是,但我仍然不认为它应该有这么大的影响..其他2个因素不存在在我的测试应用程序,至少即加密和例外(应用程序级别)..我会尝试菲德勒虽然..也不知道什么样的配置选项可能造成的问题...谢谢 – Shahid
你的数据包有多大?而且,我发现这份文件相当陈旧,但是可以从研究的角度帮助您:http://nsfcac.rutgers.edu/TASSL/Papers/p2p-p2pws02-soap.pdf –