Sys*_*tar 5 domain-name-system
全国数据中心的镜像服务器——数百万用户如何同时从他们的“google.com”请求中获得即时结果?我把这个问题弄错了,我的 IT 面试不及格。
我认为在各个大都市地区,“ http://google.com ”请求会发送到 ISP 的 DNS 服务器,该服务器会以某种方式返回几个地理位置附近的 http 服务器之一的 IP 地址,然后在内部将某些内容转移到下一个可用的本地 Google 服务器。但是,我无法解释可用本地 Google 服务器的表实际缓存在哪里,或者 IP 地址翻转的详细信息。或者他们如何从任何地方手动将某些服务器从轮换中移除。
那么,我现在应该阅读什么,以便下次我可以回答这个问题?
此外,哪些守护进程在这些机器上 24/7 全天候运行以保持所有这些镜像数据库磁盘同步?
我在这里混。谷歌所做的是标准任播。
http://en.wikipedia.org/wiki/Anycast
基本上,您在自己的 AS 中拥有自己的 Internet 地址(系统管理员应该知道的术语),然后为所有集群分配相同的 IP 范围(所有数据中心)。DNS 将循环,但您不使用它来定向到特定地址....您为此使用 bgp 任播公告。您需要的是访问 Internet gbp 级别,这需要您拥有 AS。诀窍是,如果 DNS 说“地址 x”,那么您的 DNS 任播设置会将所有请求路由到最近的数据中心。
也就是说,对于普通系统管理员来说,了解这一点并不是标准知识。正如您在错误答案中看到的,他们似乎甚至不知道 Anycast,这几乎是一种标准方法。BGP / Internet 骨干路由协议不是 99% 的网络管理员需要知道的。在这方面,这个问题是不公平的,或者是针对高级职位。
此外,哪些守护进程在这些机器上 24/7 全天候运行以保持所有这些镜像数据库磁盘同步?
没有任何。光盘不同步。据我所知,谷歌机器在每台 X 机器的集群中运行(形成一个功能单元),并且集群永远不会更新。他们会定期使用新的和更新的映像重新安装。在安装之间,不会发生同步。
您可能想研究负载平衡和 CDN。
据我所知,没有一个特定的守护进程。然而,有多种方法可以做到这一点。
编辑:为了回答你的评论,DNS 不是这里的票证。这一切都与 CDN(内容分发网络)和负载均衡器有关,重定向到许多可用的镜像主机。这些主机通过多种技术进行镜像,包括(在谷歌的情况下不太可能)rsync 和类似的技术。