如果涉及 DNS 缓存,Apache 负载平衡如何工作?

如果涉及 DNS 缓存,Apache 负载平衡如何工作?

假设一个简单的场景,即拥有大量用户的 Intranet,将有一个 DNS 服务器,用于为最终用户系统转换 IP 地址。现在,您还拥有一个yourapp.intranet部署在 Apache 上以实现负载平衡的 DNS 服务器。

如果每个客户端都像 Windows 一样维护 DNS 缓存,负载平衡将如何工作?第一个请求将获得“负载平衡”响应,但下一个请求将直接绕过 Apache?此外,如果用户直接访问节点,由于它已经知道 IP,那么 Apapche 是否能够跟踪所有这些请求?

C1-----*-----S1
       |
      DNS
       |
C2-----*-----S1

或者像 DNS仅有的知道 Apache 服务器的 IP,并且负载平衡是在 Apache 级别进行的?那么就 DNS 而言,它根本不知道节点。这也意味着它是内部发生的 NATing 吗?

C1----*      S1
      |      |
     DNS-----*
      |      |
C2----*      S2

答案1

看起来你问的是两个不同的事情。你可以利用名称解析的循环特性将 DNS 用作一种负载平衡器。但这还有很多不足之处。

负载平衡的主要方法涉及实际的负载平衡器,其单一 IP 地址通过 DNS 解析。因此您的客户端不知道后端服务器的 IP。

相关内容