我通常在我的服务中使用HTTP绑定 我读到net.tcp绑定工作得更快,但我不确定我何时应该使用它? 什么是最好的做法, 有什么缺点吗?
谢谢
答案 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)应用程序。