最快的SQL Server连接协议是什么?
相关:哪些协议可以远程与本地协议,这是否会影响最快协议的选择?
答案 0 :(得分:15)
<强> VIA 即可。这是最快的SQL协议,它在专用硬件上运行,用于执行SQL Server基准测试记录。
请注意,不推荐使用VIA协议 由微软,并将删除 Microsoft SQL Server的未来版本。 然而,它在SQL Server 2008中受支持, SQL Server 2008 R2和SQL Server 2012。
共享内存是下一个性能,但它只适用于客户端和实际可以共享内存的服务器,因此仅限本地。
对于普通硬件上的远程连接, TCP 是可行的方法。在正常操作下,它具有与命名管道相同的性能。在慢速或繁忙的网络上,它在稳健性和速度方面优于NP,事实documented in MSDN:
对于命名管道,网络 通信通常更多 互动。对等体不发送数据 直到另一个同伴使用a请求它 读命令。通常是网络读取 涉及一系列名为管道的偷看 消息开始阅读之前 数据。这些可能是非常昂贵的 网速慢,导致过度 网络流量,反过来影响 其他网络客户。
命名管道也可能导致客户端连接超时:
TCP / IP套接字也支持积压 队列。这可以提供有限的 平滑效果与命名相比 管道可能导致管道繁忙 您尝试连接时出错 到SQL Server。
不幸的是,正常的客户端配置首先尝试NP,这可能会导致连接问题(出于上述原因),其中在客户端网络配置上强制执行TCP(或通过tcp:servername
在连接字符串中)跳过NP连接尝试并直接进入TCP以获得更好的负载体验。
现在确实,我上面引用的相同链接继续称赞NP易于配置,很可能指的是不需要在防火墙中打开SQL TCP端口,但是我和BOL在那里有不同的视图。 / p>
答案 1 :(得分:7)
Shared memory is fastest for local(同一台机器上的客户端和服务器)。命名管道可能是当地第二次禁食。对于远程,每个人都使用TCP-IP,其余协议有点变成网络历史。
答案 2 :(得分:0)
安装SQL Server时选择的网络库会影响服务器与其客户端之间的通信速度。在三个关键网络库中,TCP / IP是最快的,而多协议是最慢的。由于速度优势,您需要在服务器和客户端上使用TCP / IP。另外,不要在服务器上安装未使用的网络库,因为它们只会带来不必要的开销**
答案 3 :(得分:0)
命名管道是最快的SQL Server协议。