WCF - 我什么时候应该使用netTcpBinding

时间:2013-10-06 18:11:48

标签: c# wcf

我通常在我的服务中使用HTTP绑定 我读到net.tcp绑定工作得更快,但我不确定我何时应该使用它? 什么是最好的做法, 有什么缺点吗?

谢谢

1 个答案:

答案 0 :(得分:4)

NetTcpBinding的MSDN页面说得最好

  

NetTcpBinding的默认配置比WSHttpBinding提供的配置更快,但它仅用于WCF到WCF的通信。

因此,当您拥有.NET WCF客户端和.NET WCF服务器时,NetTcpBinding是很好用的,但是如果您需要支持不是用.NET WCF编写的客户端(例如,您正在发布公共服务,那么不知道客户端将用什么语言编写,然后你需要使用HttpBinding。

This page可以快速总结每种类型的绑定以及何时应该使用它们。

  
      
  • BasicHttpBinding - 适合与WS-Basic Profile一致的Web服务进行通信的绑定,例如,ASP.NET   基于Web服务(ASMX)的服务。此绑定使用HTTP作为   transport和text / XML作为默认消息编码。
  •   
  • WSHttpBinding - 适用于非双工服务合同的安全且可互操作的绑定。
  •   
  • WS2007HttpBinding - 一种安全且可互操作的绑定,可为正确版本的安全性提供支持,   ReliableSession和TransactionFlow绑定元素。
  •   
  • WSDualHttpBinding - 一种安全且可互操作的绑定,适用于双工服务合同或通过SOAP进行通信   中介。
  •   
  • WSFederationHttpBinding - 支持WS-Federation协议的安全且可互操作的绑定,使组织能够   在联邦中有效地验证和授权用户。
  •   
  • WS2007FederationHttpBinding - 从WS2007HttpBinding派生并支持联合的安全且可互操作的绑定   安全性。
  •   
  • NetTcpBinding - 适用于WCF应用程序之间跨机器通信的安全且优化的绑定。
  •   
  • NetNamedPipeBinding - 安全,可靠,优化的绑定,适用于WCF之间的机上通信   的应用程序。
  •   
  • NetMsmqBinding - 适用于WCF应用程序之间跨机器通信的排队绑定。
  •   
  • NetPeerTcpBinding - 支持安全的多机通信的绑定。
  •   
  • WebHttpBinding - 用于为通过HTTP请求而不是SOAP公开的WCF Web服务配置端点的绑定   消息。
  •   
  • MsmqIntegrationBinding - 适用于WCF应用程序与现有应用程序之间跨机器通信的绑定   消息队列(也称为MSMQ)应用程序。
  •