我有2个服务器:一个数据库服务器(SQL Server 2008,称为服务器A)和一个应用程序服务器(称为服务器B)发送SQL查询到第一个。
他们实际上在同一个局域网中,但是我们计划在两个不同的地理位置分开它们。 我尝试估计两个服务器之间所需的最小带宽,以便我的应用程序不会遇到性能问题。 我如何估算两台服务器之间交换的数据量?
例如:对于第xx / xx / xxxx天,从A到B发送大约1.5 GB的数据,从B到A发送750 MB数据。
是否有SQL Server上的诊断工具来衡量? 或者只是一个networking工具?
我无法访问任何物理硬件设备,但是我是两台服务器的pipe理员。 谢谢。
如果您无法访问交换机,则可以使用Microsoft Netmon或Wireshark等networking分析工具。 有可能更简单的工具来衡量数据吞吐量,但因为我对Wireshark感到舒服,所以我通常使用它。 我将在SQL Server上使用此捕获筛选器在相关networking接口上设置捕获:
host 10.10.10.10 and port 1433
replace服务器B实际IP地址的IP地址,如果不是默认实例,则更改端口,取消勾选“混杂模式”并开始捕获,然后查看统计信息 – >摘要中捕获的大小。
我同意其他海报,根据应用程序的体系结构,拆分服务器可能不是一个好主意。 服务器之间响应时间的轻微增加可能会大大降低性能,尤其是在有许多顺序SQL查询的情况下。 这也是你在Wireshark捕获中可以观察到的(但在SQL Profiler中可能会更容易)。
您可能希望在两台服务器所连接的交换机端口上启用netflow并分析该stream量。
您可以运行Perfmon并捕获发送/接收/秒的字节; 你必须捕捉到一个文件来聚合数据,但它会告诉你你的高峰。 它将包括所有的stream量,而不仅仅是SQL。