IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

使用DNSPod来处理网站的均衡负载

标点符 2010-09-27 08:51:50 累计浏览 2,888 次
本机暂存

首先介绍下DNSPod。DNSPod 是一款免费智能DNS产品。DNSPod 可以为同时有电信、网通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,网通的用户访问网通的服务器,达到互联互通的效果。能够让使用双线路或拥有多镜像的网站站长轻松实现智能DNS解析,让用户仅用单域名即可访问到最快速的镜像。

原图已失效

如上图,我们可以给不同的线路(电信、网通、教育网)设置不同的IP(服务器),除此之外,DNSPod还支持,DNS轮询功能,可帮助网站进行均衡负载。如下图:

原图已失效

接下来需要介绍下什么是DNS轮询。大多域名注册商都支持多条A记录的解析,其实这就是DNS轮询,DNS服务器将解析请求按照A记录的顺序,逐一分配到不同的IP上,这样就完成了简单的负载均衡。

优点

  • 基本上无成本,因为往往域名注册商的这种解析都是免费的;
  • 部署方便,除了网络拓扑的简单扩增,新增的Web服务器只要增加一个公网IP即可。

缺点

  • 健康检查,如果某台服务器宕机,DNS服务器是无法知晓的,仍旧会将访问分配到此服务器。修改DNS记录全部生效起码要3-4小时,甚至更久;
  • 分配不均,如果几台Web服务器之间的配置不同,能够承受的压力也就不同,但是DNS解析分配的访问却是均匀分配的。其实DNS也是有分配算法的,可以根据当前连接较少的分配、可以设置Rate权重分配等等,只是目前绝大多数的DNS服务器都不支持;
  • 会话保持,如果是需要身份验证的网站,在不修改软件构架的情况下,这点是比较致命的,因为DNS解析无法将验证用户的访问持久分配到同一服务器。虽然有一定的本地DNS缓存,但是很难保证在用户访问期间,本地DNS不过期,而重新查询服务器并指向新的服务器,那么原服务器保存的用户信息是无法被带到新服务器的,而且可能要求被重新认证身份,来回切换时间长了各台服务器都保存有用户不同的信息,对服务器资源也是一种浪费。

DNS轮询原理:比如你添加了三条记录,分别是1,2,3

  • 第一个用户请求,记录返回1,2,3
  • 第二个用户请求,记录返回2,3,1
  • 第三个用户请求,记录返回3,1,2
  • 第四个用户请求,记录返回1,2,3

所有的记录都是均匀的返回给每一个请求的用户,但有时候用户可能一打开你的网站就马上退出(比如关掉了浏览器),有些用户可能会一直浏览你的网站。因为DNS无法得知还有哪个用户还在访问你哪一台服务器,所以就会造成有些服务器访问的用户多,有些服务器访问的用户少(因为这台服务器访问时间短的用户比较多)。最后就会出现访问用户不平均的情况。

DNSPod官方网址:https://www.dnspod.com/

同分类推荐文章

  1. How to Set Up Homebrew Tap for Private CLI Tools: A Complete Guide (2026-05-27 02:13:03)
  2. WARNING: detected duplicate paths to the same disk导致crs无法正常启动故障解决 (2026-05-24 22:24:49)
  3. Terraform 极简入门:从 AWS-CLI 到基础设施即代码(IaC) (2026-05-20 08:00:00)

查看更多 DevOps 文章 →

建议继续学习

  1. 如何拿下简短的域名 (累计阅读 16,875)
  2. 从输入 URL 到页面加载完成的过程中都发生了什么事情? (累计阅读 15,822)
  3. 自建DNS以防止GFW干扰 (累计阅读 13,042)
  4. 强制刷新本地 DNS 缓存记录 (累计阅读 10,778)
  5. 大型高并发高负载网站的系统架构分析 (累计阅读 8,923)
  6. 从谷歌宕机事件认识互联网工作原理 (累计阅读 8,689)
  7. 2014年1月21日中国互联网DNS瘫痪事件原因分析 (累计阅读 8,358)
  8. 域名相关的一些基本概念总结 (累计阅读 8,012)
  9. 关于 SOCKS 代理的远端 DNS 解析 (累计阅读 7,877)
  10. DNS 隧道 (累计阅读 7,144)