aws-doc/课程/第二阶段-核心服务/第17天-Route53与CloudFront.md
2026-05-08 10:24:39 +08:00

4.8 KiB
Raw Blame History

第17天Route 53 与 CloudFront——DNS 和全球加速

今天你将学到什么

今天学两个让你的网站"又快又稳"的服务Route 53DNS负责把域名翻译成 IP 地址CloudFrontCDN负责把内容推到全球用户身边。


Route 53互联网的"电话簿"

DNS 是什么

当你在浏览器输入 www.taobao.com 时,电脑其实不认识这个名字。它需要先查"电话簿"DNS找到这个名字对应的 IP 地址(比如 140.205.220.96),然后才能连接到服务器。

Route 53 就是 AWS 提供的 DNS 服务——帮你管理域名和 IP 地址的对应关系。

名字来源DNS 使用的网络端口号是 53。

Route 53 能做什么

基本功能:域名解析

  • www.example.com54.23.100.50(你的服务器 IP

高级功能:智能路由(这才是 Route 53 的真正价值)

路由策略——把用户导向最合适的服务器

简单路由:一个域名对应一个 IP。最基本的用法。

加权路由:按比例分配流量。

  • 90% 的流量到旧版本10% 到新版本(用于灰度发布)

延迟路由:把用户导向延迟最低的服务器。

  • 例:日本用户自动访问东京的服务器,美国用户自动访问弗吉尼亚的服务器

故障转移路由:主站挂了自动切到备用站。

  • 例:主服务器在东京,如果东京挂了,自动切换到新加坡的备用服务器

地理位置路由:根据用户所在国家/地区路由。

  • 例:中国用户访问中文站点,美国用户访问英文站点

健康检查

Route 53 会定期检查你的服务器是否正常:

  • 每 30 秒发一个请求到你的服务器
  • 如果连续几次没响应,标记为"不健康"
  • 自动把流量切到健康的服务器

CloudFront把内容推到用户身边

CDN 是什么

CDNContent Delivery Network内容分发网络的原理很简单

没有 CDN

  • 你的服务器在东京
  • 巴西用户访问你的网站
  • 数据从东京传到巴西,跨越半个地球,需要 300 毫秒

有 CDN

  • 你的内容被"复制"到全球各地的节点
  • 巴西用户访问时,从巴西本地的节点获取
  • 只需要 20 毫秒

生活类比

  • 没有 CDN = 所有人都要去总部取货(远的人等很久)
  • 有 CDN = 在各个城市设了分仓,就近取货(大家都快)

CloudFront 的工作流程

用户(巴西)发起请求
    ↓
请求到达最近的边缘节点(圣保罗)
    ↓
边缘节点有缓存?
├── 有 → 直接返回超快10-20ms
└── 没有 → 去源站(东京)取 → 缓存一份 → 返回给用户
              下次其他巴西用户请求同样内容时,直接从缓存返回

CloudFront 能加速什么

内容类型 例子 缓存效果
静态文件 图片、CSS、JS、字体 非常好(内容不变,缓存命中率高)
视频 课程视频、直播回放 很好
API 响应 不经常变化的数据 一般(需要设置合理的缓存时间)
动态内容 用户个人数据 不缓存(每次都回源)

CloudFront + S3最经典的组合

这是部署静态网站最便宜、最快的方案:

  1. 把网站文件HTML/CSS/JS/图片)放在 S3 桶里
  2. 创建 CloudFront 分发,源设置为 S3 桶
  3. 用 Route 53 把域名指向 CloudFront
  4. 用 ACMAWS Certificate Manager申请免费的 HTTPS 证书

结果

  • 全球访问速度极快600+ 个边缘节点)
  • 成本极低S3 存储 + CloudFront 流量,每月可能只要几美元)
  • 自动 HTTPS
  • 能扛住巨大流量CDN 天然就是分布式的)

适合个人博客、公司官网、单页应用React/Vue、文档站点


Route 53 + CloudFront 配合使用

一个全球化网站的典型架构:

用户输入 www.example.com
    ↓
Route 53 解析域名 → 返回 CloudFront 的地址
    ↓
用户请求到达最近的 CloudFront 边缘节点
    ↓
├── 静态内容(图片/JS/CSS→ 边缘节点直接返回(缓存)
└── 动态内容API 请求)→ 转发到源站ALB/EC2

今天的小测验

  1. DNS 的作用是什么?用你自己的话解释。
  2. Route 53 的"延迟路由"是什么意思?举一个使用场景。
  3. CDN 为什么能让网站变快?它的核心原理是什么?
  4. CloudFront + S3 的组合适合什么类型的网站?

延伸阅读


明天预告

明天学习 SQS 和 SNS——消息队列和通知服务。它们让系统的各个部分"松耦合"通信,是构建可靠分布式系统的基石。