定义
- 内容分发网络
- 将资源缓存到用户最近的位置,加速内容传输,降低网络延迟
- 以空间换时间,牺牲部分存储成本换取更快的响应速度
核心目标
- 通过地理分布优化,解决用户访问远距离服务器时的性能瓶颈
本质
- 缓存网络
- 将内容复制到多个节点。减少用户与源站直接交互
- 就近服务
- 用户从最近节点获取内容
- 负载均衡
- 分散源站到流量压力,避免源站过载
原理
- DNS解析与节点选择
- CDN依赖DNS重定向技术
- 用户本地DNS将域名解析请求发送到CDN到DNS服务器
- CDN听过分析用户IP(地理位置,网络运营商),返回
最优节点的IP地址
- CDN依赖DNS重定向技术
- 节点缓存
- 命中缓存
- CDN已存在请求资源,直接返回给用户
- 回源(未命中)
- CDN节点向源站请求资源,先缓存后再返回给用户
- 缓存策略
- 通过HTTP头(如Cache-Control)或CDN配置控制缓存时间
- 命中缓存
- 动态内容优化
- 动态内容(如API请求),CDN可能通过路由优化(如TCP加速/链路优化)提升传输效率,而非直接缓存
- 内容更新与同步
- 主动预热
- 源站更新内容后,可主动推送新内容到CDN
- 缓存失效
- 手动刷新或设置TTL(Time-to-Live)自动淘汰旧内容
- 主动预热
应用场景
- 静态资源加速
- 图片/css/JS等静态文件加载
- 视频流媒体
- 支持大规模视频直播和点播,降低卡顿率
- 软件下载
- 加速大型文件(如游戏,操作系统镜像)等分发
- 安全防护
- 通过CDN隐藏源站IP,抵御DDos攻击和恶意爬虫
优势
- 加速效果
- 降低延迟,提升用户体验
- 节省带宽
- 减少源站带宽消耗,降低服务器成本
- 高可用性
- 节点冗余设计,避免单点故障导致服务中断
- 安全性
- 提供对源站对DDos防护,https加密等安全功能