繁体   English   中英

WCF Restful服务性能不佳

[英]WCF Restful service bad performance

我的wcf restful服务只能服务2个请求/秒!

详细:

我创建了一个wcf restful服务,它只通过GET动词公开一个方法。 该方法没有逻辑,并立即返回。

我还创建了一个测试客户端,以检查服务吞吐量和性能,这是WebHttpRequest发出的请求。

该服务每秒只能处理2个请求!

我还通过我的浏览器向服务发出请求,结果相同:一个请求500毫秒。

然后我将服务绑定更改为netTcpBinding,并且该服务能够处理大约2000个请求/秒。

该服务在Windows服务下运行,由WebServiceHost和WebHtppBinding托管。

很高兴提到客户端和服务都在同一台服务器上运行。

wcf restful service的性能如此差,这有什么意义吗?

会感激任何帮助。 谢谢。

不,它没有任何意义,可能表明您的测试存在问题。 您的REST测试客户端是如何编写的? 您是否意识到,默认情况下,.NET只允许两个打开的连接到任何域以进行“常规”.NET进程? 对于ASP.NET应用程序,它会自动增加到10

该信息在ServicePointManager.DefaultConnectionLimit 您可以通过为要尝试连接的域添加更高的限制来以编程方式或通过配置来增加此值。 配置明智,这看起来像这样:

<system.net>
    <connectionManagement>
        <add address="www.myserver.com" maxconnection="20" />
    </connectionManagement>
</system.net>

如果您愿意,可以使用address="*"打开所有域的连接。

至于你看到的延迟,它可能是默认情况下其他功能的结果,例如UseNagleAlgorithm或者,如果你的POST, Expect100Continue

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM