【发布时间】:2010-10-08 09:29:34
【问题描述】:
我正在使用基本的 HTTP 绑定。
有谁知道在性能方面哪个是最好的绑定,因为这是我们网站的关键问题?
【问题讨论】:
-
您能否提供更多有关您的平台的信息?什么样的客户端连接到您的网络服务?安全要求是什么?
-
看看this
我正在使用基本的 HTTP 绑定。
有谁知道在性能方面哪个是最好的绑定,因为这是我们网站的关键问题?
【问题讨论】:
取决于服务所在的位置。
如果它们在同一台机器上,NetNamedPipeBinding 应该为您提供最大的性能。
否则,您必须根据他们所在的位置、是否必须通过 Internet 进行通信、互操作性等进行选择。
Soledad Pano's blog 有一个很好的流程图,可以帮助您根据情况选择合适的绑定
【讨论】:
这是将苹果与橙子进行比较。如果您使用的是基本的 HTTP 绑定,那么它提供了一组基本的服务和其他服务,这与 WsHttpBinding 提供的服务不同。
鉴于此,性能指标会有所不同,但您也不会获得相同的功能,如果您需要一组特定的功能,那么根本不值得进行比较。
此外,还有一些绑定(如 net tcp 和命名管道绑定)可能根本不适用,但具有更好的性能特征。
最后,您关于“最佳性能”的陈述表明您确实没有以正确的方式看待它。您对高峰和非高峰时段的负载以及产品可接受的响应时间有预期。您需要确定 WCF 是否属于这些参数,然后从那里开始工作,而不仅仅是说 “我正在寻找最好的表现”。
你必须对你想做的事情提出更多的要求,然后才能得到更多的启示。
【讨论】:
WCF 信息的好资源:
有一个关于为您的特定场景选择绑定的部分。安全不是问题吗?如果没有,那么您有更多选择。
【讨论】:
如果没有其他已知因素(服务器硬件、并发用户数量等),很难判断性能会如何。
例如,HTTP 绑定的性能会比 HTTPS 稍好,但二进制 WCF 到 WCF 的通信会比 HTTP 更快,但兼容性较差。
我认为您需要提供更多详细信息 - 所需的功能是什么(您需要 SOAP 消息交换,还是带有 JSON 的 Ajax?)以及预期的服务器负载。
【讨论】: