我们的爱发电 amazing 的在处于“暂停解析”状态时将域名转移到了 CloudFlare,这是神迹吗?不,这是 DNSGSLB.


全局服务器负载均衡(Global Server Load Balancing,GSLB)是一种高级流量分配方法,旨在将互联网和Web应用程序的流量分布到多个地理位置不同的服务器上。

GLSB 的主要目标是增强应用程序的性能、可靠性和可用性 。GSLB 确保用户请求被路由到最佳的服务器,从而提升用户体验。

当 DNS 遇到 GSLB 时,实际上是将负载均衡功能集成到 DNS 系统中。当用户发出任何应用连接请求时,首先通过 DNS 系统获取服务器的 IP 地址。

DNS 系统本身是具备简单负载分配能力的,这是基于 DNS 的轮询机制。

一个简单的例子:如果有多台 Web 服务器同时为 awaland.xyz 提供服务,awaland 的权威服务器可能会解析出一个或多个 IP 地址。权威域名服务器还可以调整响应中IP地址的排列方式,即在每次响应中将不同的 IP 地址置于首位,通过这种方式实现对这些 Web 服务器的负载均衡。

在此过程中,基于DNS的GSLB通过智能决策,向用户返回最佳服务器的IP地址 。

优点

  • 性能提升:通过智能选择最优服务器,减少访问延迟。
  • 高可用性:在服务器故障时自动切换到其他可用服务器,提升服务可靠性。
  • 扩展性强:易于扩展和管理多个数据中心 。

缺点

  • 依赖DNS解析:DNS解析性能和稳定性对整个系统至关重要,DNS系统的任何故障都可能导致服务中断 。

适用场景

  1. 全球分布式应用:适用于全球用户访问的网站和应用,如电商平台、社交媒体等。
  2. 跨区域数据中心:有多个分布在不同地理位置的数据中心的企业,需确保用户访问最近的数据中心。
  3. 高可用性要求高的应用:金融服务、在线游戏等对服务连续性和低延迟有较高要求的应用 。
  4. 把 CNNIC 看傻眼。

解析步骤

  1. 用户向本地DNS服务器发出查询请求。
  2. 本地DNS服务器将查询请求转发给授权DNS服务器。
  3. 授权DNS服务器根据预定义的负载均衡策略(如地理位置、服务器负载、健康状态等),返回最优服务器的IP地址。
  4. 用户的应用连接请求被路由到该IP地址所对应的服务器上 。

爱发电使用了 DNSGSLB ,当从海外请求 afdian.net 时,DNS服务器会返回一个 CloudFlare 地址。

当权威 DNS 停止对 afdian.net 的解析时,境外的 DNS 镜像服务器的解析流入了境内 DNS 镜像服务器。所以我们就看到了时间片轮转式访问。

Reference:


花朵艳丽终散落,谁人世间能长久?