“你点击搜索,谷歌会在 0.3 秒内返回结果。但是有没有想过在您按“Enter”和弹出结果之间会发生什么?
简介:让我们像开发人员一样思考
假设您在 MERN 堆栈中构建了一个简单的博客应用程序。它部署在 VPS 上。一个来自印度的用户点击了您的域,然后砰 — 请求到达您在新加坡的服务器。很酷,但是如果来自 80+ 个国家/地区的 100 万用户这样做呢......同时?
Google 每秒收到超过 99,000 个搜索请求。那么,他们如何知道哪个服务器应该响应,用户所在的位置,或者当时哪个路由最快呢?
现实生活中的类比:机场值机
将 Google 请求想象成旅行者:
- 您就是请求。
- 您的位置是请求的来源。
- Google 的数据中心就是机场。
- 路线规划就像选择到机场的最短、最快、最不拥挤的路线。
Google Scale 的路由分步细分
1. 您在 Chrome 中输入“openai.com”并按 Enter 键
这将触发 DNS 解析,将域名转换为 IP 地址。
# Behind the scenes
dig openai.com
发生了什么事情:
- 您的设备查询 Google 公共 DNS (8.8.8.8)。
- Google 使用 Anycast DNS:DNS 请求被路由到最近的 DNS 服务器(根据网络距离,而不是物理距离)。
如果您在比哈尔邦,您的 DNS 请求可能会到达印度的服务器,而不是美国的服务器。
2. DNS 解析为全局 IP – 不是一个固定服务器
假设返回的 IP 是 。但。。。这不仅仅是一台服务器。该 IP 由全球许多使用 Anycast 的服务器提供。142.250.192.174
幕后花絮:
位置 | 服务器处理142.250.192.174 |
---|---|
孟买 | GFE(Google 前端)1 |
新加坡 | GFE 2 |
法兰克福 | GFE 3 |
旧金山 | GFE 4 系列 |
您的请求会自动路由到最近且拥塞最少的 GFE。
3. 流量到达 Google 前端 (GFE)
GFE 就像 Google 网络的接待台。它确实:
- TLS 终止(保护您的请求)
- 负载均衡
- 身份验证(Cookie、令牌)
- 决定路由到哪个后端服务
安全:
GFE 还可以防止:
- DDoS 攻击
- 恶意请求
- 无效的 IP 标头
发表评论 取消回复