netTcpBinding或wsHttpBinding

问题描述 投票:17回答:5

我有一个托管为Windows服务的WCF服务,客户端是一个使用WCF服务方法的ASP.Net应用程序。

在实施安全性的过程中,我很困惑netTcpBinding / wsHttpBinding中的哪一个适合我的情况。

很可能场景中的所有应用程序(WCF服务,Windows服务,ASP.Net网站)都将位于我们办公室的不同服务器上,因此位于Intranet中。用户可以通过Internet访问ASP.Net网站。

虽然,我总是可以在这里使用wsHttpBinding,在我的情况下是否适合使用netTcpBinding设置服务端点?

wcf wcf-binding nettcpbinding wshttpbinding
5个回答
13
投票

检查这个以比较所有不同的内置绑定:

Configuring System-Provided Bindings - MSDN

至于你的情况,只要它是联系WCF服务的Web服务器,你不需要为服务的任何外部消费者提供端点...... netTcpBinding应该胜任这项工作。


10
投票

如果您愿意,可以通过多个绑定公开您的服务,因此您实际上可以同时使用这两种绑定。

但是,如果您同时控制客户端和服务并且它们都使用WCF,则netTcpBinding要快得多。除非你在这两者之间有防火墙,否则我会选择它。


6
投票

使用netTcpBinding而不是wsHttpBinding如果你愿意交换性能的互操作性,知道如果你对结果不满意就可以轻松取消交易(这是改变配置值的问题)。


6
投票

由于您的WCF服务将由位于办公室(INTRANET)的应用程序访问,因此我将使用netTcpBinding。

在Intranet方案中,建议您使用netTcpBinding,除非您有特定要求使用其他绑定,例如wsHttpBinding。默认情况下,netTcpBinding使用二进制编码和传输安全性,从而提供更好的性能。

以下URLS将有助于获取更多信息

http://msdn.microsoft.com/en-us/library/cc949026.aspx

http://msdn.microsoft.com/en-us/library/ms730879.aspx


0
投票

由于您的WCF服务是netTcpBinding的Windows服务+1。在IIS上托管netTcpBinding很困难。

© www.soinside.com 2019 - 2024. All rights reserved.