使用 MultiSubnetFailover 提高单个子网的性能

Fre*_*gen 5 sql-server availability-groups sql-server-2017

BOL 上,我阅读了以下关于MultiSubnetFailover=True 的内容:

即使可用性组仅跨越单个子网MultiSubnetFailover连接选项也应设置为True。这允许您预先配置新客户端以支持未来跨子网,而无需更改未来客户端连接字符串,并且还优化了单个子网故障转移的故障转移性能

据我了解MultiSubnetFailover,使用此选项设置客户端驱动程序为与侦听器关联的每个 IP 地址设置一个套接字。它们都被并行检查以加快查找在线 IP 的过程,第一个响应将用于连接。在这里,我看到了性能提升。

但是单个子网的性能提升在哪里?只有与侦听器关联的 IP。

Kin*_*hah 5

MultiSubnetFailover=True设置时,SQL Server本机客户端将积极重试TCP连接。

所以在

  • 在多子网方案中,它将尝试并行连接,您已经知道了。

  • 在单个子网场景中,它会比操作系统默认的 TCP 重新传输间隔更快地重试 TCP 连接,因此您在 AG 故障转移后的重新连接时间将得到改善。