我必须承认,我是一名软件工程师,而这些东西并不是我的专业领域。
我在 .NET 4 中有一个 Web 应用程序,它连接到托管在同一台机器上的各种 Web 服务。我们使用可公开访问的域来调用这些 Web 服务,而这些域又指向同一台机器。
问题是,如果我在服务器上将这些域指向 127.0.0.1,是否会获得一些性能改进?
在我看来,这样至少可以跳过域名查找。但正如我之前所说,这不是我的专业领域,我想知道是否有人可以对此提供一些帮助。
对于那些感兴趣的人,我正在使用 Windows Server 2008 R2,但我怀疑这是否真的很重要,因为我认为这可以应用于任何其他操作系统。
答案1
DNS 条目(通常)被缓存,因此尽管初始查找可能需要一秒钟左右,但后续查找(如果在短时间内)应该很快。
答案取决于您的代码尝试进行名称解析的频率,以及解析器库或操作系统缓存条目的时间。
即,如果您的 Web 应用程序每秒建立一次连接并始终进行名称解析,并且由于 TTL(生存时间)过期而始终被迫发送 DNS 请求,那么是的,删除它会为您带来性能上的好处。
但是,如果您的应用程序每 5 分钟连接一次,并且大多数时间都会获得缓存响应,那么您可能不会注意到任何变化。