
1) 确认当前主机/服务器规格(CPU、内存、磁盘、带宽)。
2) 统计日常与峰值并发、总流量与并发时长(例如峰值5,000并发,平均3小时/天)。
3) 评估现有CDN/域名解析策略和缓存命中率(目标命中率>85%)。
4) 测试源站承载能力:带宽与并发阈值(如单台10Gbps理论可承载≈3,333个3Mbps流)。
5) 明确SLA、成本预算与可扩展性目标(目标99.95%可用性)。
1) 阶段一:横向扩容源站与提升带宽(新增1-2台10Gbps机柜级服务器)。
2) 阶段二:接入专业CDN,部署边缘节点并同步缓存策略(HLS切片6秒)。
3) 阶段三:引入Anycast + BGP + 智能DNS实现全局负载分发。
4) 阶段四:构建回源限流与二级缓存,减少源站压力。
5) 阶段五:实现自动扩容、灰度切换与蓝绿部署流程。
1) 边缘节点选择就近调度、支持TLS卸载与HTTP/2。
2) HLS/HDS缓存键设计:按播放ID+分辨率+片段号缓存,缓存TTL设置为30s-300s。
3) Anycast部署:多点Anycast IP用于直播分发,降低DNS解析延迟。
4) DNS智能调度:基于地域+实时链路质量切换边缘节点。
5) 回源策略:边缘未命中时并发回源限速与排队,防止雪崩。
1) 源站示例配置和吞吐能力见下表。
2) 建议使用Linux + Nginx-RTMP或SRS做转发/切片,开启sendfile/epoll。
3) 编码端:使用硬件编码器或x264 CRF/CBR策略,码率示例:1080p=3.5Mbps。
4) HLS切片设定:segment=6s,playlist更新间隔=2s,保持低延迟策略。
5) 缓存控制:Cache-Control, Expires与边缘清理API结合使用。
| 节点类型 | CPU | 内存 | 磁盘 | 公网带宽 | 估算并发(3Mbps) |
|---|---|---|---|---|---|
| 源站(示例) | 16 vCPU | 64 GB | 2x1TB NVMe | 10 Gbps | ≈3,300 |
| 边缘节点 | 8 vCPU | 32 GB | 1TB NVMe | 2-5 Gbps | ≈700-1,600 |
| 回源缓存服务器 | 8 vCPU | 32 GB | 4TB SSD | 5 Gbps | ≈1,600 |
1) 在接入层使用云端清洗(黑洞 + 清洗池)并结合本地SYN Cookie、rate-limit。
2) 部署WAF规则、HTTP速率限制与请求行为分析,阻断异常流量。
3) BGP黑洞与自动化脚本配合阈值(例如流量>80Gbps触发清洗)。
4) 监控项:带宽、连接数、回源QPS、缓存命中率、播放失败率(目标播放成功率>99%)。
5) 告警与自动化:Prometheus+Alertmanager+Grafana,阈值与自动扩容联动。
1) 背景:日常并发3,000,促销峰值10,000并发,原架构源站单点压力大。
2) 方案:新增两台10Gbps源站,接入三线CDN并部署10个边缘节点(亚太优先)。
3) 结果:高峰期间源站带宽占用下降70%,缓存命中率由60%提升至88%。
4) 配置实例:源站16vCPU/64GB/10Gbps,边缘8vCPU/32GB/2-5Gbps。
5) 迁移步骤:灰度接入->并行回放压力测试->切换域名CNAME->观察并回滚策略。