有人可以帮助netTcpBinding v / s BasicHttpBinding之间的主要差异吗?
在我当前的项目中,我们将BasicHttpBinding转换为netTcpBinding并获得性能问题,即使BizTalk中的值设置为1:00:00,它也会启动超时。我们无法弄清楚为什么?
答案 0 :(得分:5)
netTcp和basicHttp绑定使用完全不同的传输机制:TCP而不是HTTP。理论上,TCP的二进制编码应该比HTTP的文本编码快。
正如所讨论的here,netTcpBinding可能没有那么快,因为额外的安全开销和/或争用:
默认情况下,NetTcpBinding可以启用某些级别的安全性添加 WCF运行时的消息处理管道的开销。 此外,NetTcpBinding还启用端口共享功能 这意味着您的WCF主机将无法独占访问该端口 而是可以与其他应用程序共享它。这可能会得到 如果您在Windows Server中托管服务,那将非常有趣 2008或Windows 7环境中给出了一些Windows 依赖于NetTcpBinding端点的应用程序。最后, theListenBacklog和MaxConnections设置的默认值是 设置为10,这对于大量客户来说远非最佳。
另请注意,如果没有关于通信的哪个部分超时的更多信息,则很难说出确切的原因。请记住,事务的每一面都有不同的打开,关闭和发送或接收超时设置。