Web 角色通过 DNS 连接到虚拟机上的 IIS 端点

Web-Role connecting to an IIS endpoint on a Virtual Machine by DNS

我有一个 Web 角色,它使用 VM 的 DNS 名称与虚拟机的端点通信:

http://<myservice>.cloudapp.net:62002/Endpoint/msmdpump.dll

端点由 IIS 公开。

一切正常,但由于发出了大量请求,我的问题是:使用 DNS 是否会降低性能(延迟)?或者我应该改用内部 IP 地址之类的东西吗?

DNS 查询可测量。就够你操心了吗?可能不会。但是,最终由您来决定。

DNS 查询的结果将存储在客户端(您的 WebRole)的 DNS 缓存中。因此,一旦解析了名称,后续调用将直接发送到它解析到的 IP 地址(无 DNS 查询),在本例中为 Azure 负载均衡器的 IP 地址。所以,真的,啤酒花是 WebRole > Azure LB > 虚拟机。

如果您决定采用使用 VM 的 IP 地址调用端点的路径,那么您应该设置 static IP address for the VM。否则,您可能会更改 IP 地址并因此破坏您的 WebRole。这还要求您的 VM 位于虚拟网络中。