Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 两个Azure虚拟机之间的延迟_Asp.net_Sql Server_Azure_Virtual Machine_Latency - Fatal编程技术网

Asp.net 两个Azure虚拟机之间的延迟

Asp.net 两个Azure虚拟机之间的延迟,asp.net,sql-server,azure,virtual-machine,latency,Asp.net,Sql Server,Azure,Virtual Machine,Latency,我有一个ASP.NET4.5、聊天的web应用程序,它托管在一个大型(4核7GB)Azure虚拟机上。WEB应用程序通过专用的WCF服务松散地耦合到数据层。应用程序数据库由另一个大型(4核7GB)Azure VM上的专用SQL Server实例托管。WCF端点通过ASP.NET连接字符串与DB VM通信,该字符串使用DB VM公共DNS名称-例如xyz.cloudapp.NET WEB和DB虚拟机似乎都在不同的子网中运行,但都位于同一Azure位置;不同的第二个和以后的八位组值 在一个介质(2核

我有一个ASP.NET4.5、聊天的web应用程序,它托管在一个大型(4核7GB)Azure虚拟机上。WEB应用程序通过专用的WCF服务松散地耦合到数据层。应用程序数据库由另一个大型(4核7GB)Azure VM上的专用SQL Server实例托管。WCF端点通过ASP.NET连接字符串与DB VM通信,该字符串使用DB VM公共DNS名称-例如xyz.cloudapp.NET

WEB和DB虚拟机似乎都在不同的子网中运行,但都位于同一Azure位置;不同的第二个和以后的八位组值

在一个介质(2核3.5GB)Azure VM上运行完全相同的解决方案时,延迟问题要低得多


我正在寻找关于如何尽可能减少WEB到DB延迟的建议。

听起来好像两个VM在两个独立的云服务中运行。我是否可以建议将两台计算机放在同一个云服务中?这应该允许您通过短DNS名称(也称为服务器名称)从web层访问数据库服务器。这不仅有助于通过允许您删除在数据库服务器上声明的任何输入端点来保护数据库服务器的安全,而且还可以减少延迟,因为调用将直接从一个VM进行到另一个VM,而不是通过Azure Fabric负载平衡器(这是所有到云服务URL的调用的前端)

如果同一数据中心中有两个VM需要相互通信,请不要使用它们的公共DNS。创建关联组,在该关联组中创建虚拟网络,然后将两个虚拟机都放入虚拟网络中(您可能需要关闭它们,删除它们而不删除它们的VHD,然后从新vnet中的数据磁盘创建它们)。 通过DNS(因此通过Azure LB)访问VM会给每个请求增加约0.5ms的延迟-不建议聊天应用程序使用