我想知道 Google 服务器位于何处以及它们的 DNS 查找如何工作。我现在位于德国。如果我访问 google.de(德语 Google 页面),那么所有搜索的服务器是否位于德国,还是分布在世界各地?如果我访问 google.com,它会自动连接到美国服务器,还是会先尝试在德国服务器上查找搜索结果?
我很奇怪,因为我注意到 ping google.com 时的延迟真的很低。如果服务器位于德国境外,我无法想象 ping 值会这么低。
那么,关于连接到他们的服务器,搜索关键字的查找是如何进行的?我尝试了 traceroute,但没能找到太多信息。这取决于关键字吗?这取决于几个不同的因素,即实际正在使用哪个服务器?
答案1
谷歌如何搜索实际上当然,作品是一个严格保守的秘密。
然而,过去他们曾披露过一些有关他们所采用的一般做法的信息。
首先,谷歌数百数据中心 - 早在 2008 年左右,估计它们就已经在几十万台服务器上运行;你可以放心地假设他们现在有超过一百万台服务器 - 这还不包括他们在内华达沙漠中建造的新的 80 万台服务器的数据中心 :)
这些不一定是最先进的服务器 - 它们的平台在设计上是“云”化的,任何数量的节点都可能死亡,而服务不会发生丝毫可察觉的变化。
基本上,他们的服务器分为三层:前端搜索、中间层和后端(“深度”)存储。
对于 Google 搜索可以提供的每一点信息,信息都会存储在多个位置 - 常用结果可能存储在数百个位置。
虽然其中大多数会使用附近的服务器来提供答案,但它们不必这样做 - 如果您正在搜索一条非常模糊但具体的信息,它们可能必须联系全球少数几台拥有该信息的服务器之一。
对于每日新闻(例如),它将位于数千台服务器上,您将获得最接近的一台。
在 Youtube 上搜索一些谷歌建筑视频;我记得几年前这个就在网上。
答案2
他们可能在每个大陆都有多个数据中心,并且由于任播,他们可以宣布来自多个提供商/数据中心的相同网络。
您将始终选择成本最低的路径(就路径、跳数、指标、对等点之间的带宽等而言),因此您将从各处体验到低延迟。
您可以在这里阅读有关 anycasting 的更多信息:http://en.wikipedia.org/wiki/Anycast
答案3
返回您请求的最近的 DNS 条目,记录与 Google.de、Goggle.fr 和 .com 不同,这对您有利,因此您可以使用更少的网络跳数访问服务,
然而,除了大型的谷歌数据中心之外,你和我连接的服务器最有可能是GGC(Google 全球缓存)服务器。它们位于几乎所有级别的大型网络 POP 和 ISP 上。你可以说它们在某种程度上是 CDN
您可以在他们的 GGC Beta 计划中了解更多信息http://ggcadmin.google.com/ggc
顺便说一句...尽管它是 BETA 程序,但它距离 Beta 部署还很远;)