1) 流量与地域:统计近90天访问地域、峰值QPS、带宽与请求类型;
2) 资产与协议:列出静态/动态资源、API域名、是否需HTTP/2或QUIC;
3) 安全与合规:确认WAF/DDOS需求、数据跨境合规与日志保留期;
4) SLA与预算:定义目标加速比例、可接受延迟、月预算与计费模型(按流量/请求/保留带宽)。
1) 覆盖与PPT:对比供应商的POP覆盖、Anycast能力与本地合规资质;
2) 功能对齐:检查缓存规则、边缘计算(Edge Functions)、证书管理、日志导出与API;
3) 性能与成本测试:试用期跑iperf/httperf或curl并测latency、缓存命中率,预估费用;
4) SLA与支持:确认技术支持时区、响应时间、回滚机制。
1) 缓存拓扑:决定使用边缘回源(origin pull)或推送(push),是否启用Origin Shield;
2) DNS与切换:采用CNAME或Anycast IP方案,规划低TTL切换窗口;
3) 安全边界:WAF策略、速率限制、IP白名单与证书托管方案;
4) 日志与监控:确认日志格式(原始/JSON)、导出目的地(S3/ELK)与监控指标。
1) 证书获取:选择CDN托管证书或ACME自动化(Let's Encrypt/私有CA);
2) 验证方式:DNS或HTTP验证提前配置,确保证书可在切换前就绪;
3) DNS策略:将TTL临时降到60s,准备备用域名用于灰度切换;
4) SPF/DMARC/CORS:检查影响静态资源的跨域设置与邮件相关记录。
1) 缓存规则:为静态资源设置长TTL,版本化文件强制缓存;对API设置短TTL或不缓存;
2) 缓存键:明确是否包含Query String、Cookie及Header,建议去除不必要的Cookie;
3) 压缩与协议:启用GZIP/Brotli、HTTP/2与HTTP/3(QUIC)支持;
4) 回源验证:配置回源鉴权(IP白名单、签名或Basic Auth)并测试回源响应头。
1) 基础连通:ping/traceroute/mtr到POP测试路由;
2) HTTP测试:curl -I -H "Host:example.com" --resolve example.com:443:CDN_IP https://example.com/path 用于检查证书与缓存头;
3) 缓存命中:多次请求观察X-Cache/X-Cache-Status或Age头;
4) 压力测试:在非高峰用wrk/ab模拟请求,看回源是否撑住并验证缓存命中减少回源压力。
1) 降低TTL:上线前72小时将DNS TTL降到60s并缩短缓存TTL;
2) 子域灰度:先把静态资源或部分地域切到CDN验证,再批量切换核心域名;
3) 按权重切流:使用流量管理或DNS分流(比如20%/50%/100%),观察错误率与延迟;
4) 回滚计划:保留快速回滚脚本,且切换窗口内监控若超阈立即回退。
1) 功能检查:资源加载、图片/JS/CSS是否走CDN且缓存命中;
2) 安全检查:WAF拦截日志、证书链正确、CSP与CORS无误;
3) 性能指标:使用RUM/Synthetic验证首字节时间(TTFB)、页面加载时间;
4) 日志完整性:确认边缘日志与回源日志同步并可用于分析。
1) 指标与阈值:带宽、QPS、HTTPCodes(5xx/4xx)、缓存命中率、回源延迟;
2) 监控系统:Prometheus/Grafana或供应商自带仪表盘,配置Dashboard;
3) 报警策略:分级(Warning/Critical),接入PagerDuty/钉钉/邮件,定义自动化恢复脚本;
4) 日志告警:基于ELK或DataDog做异常行为检测(突增流量、异常路径)。
1) 定期审计:每月检查缓存命中、回源流量、成本分析;
2) 优化策略:对命中低的资源分析是否应Version化或调整缓存键;
3) 自动化:将CDN配置写入Terraform/Ansible,CI触发清除缓存或证书更新;
4) 演练恢复:定期做切换回源与故障演练,确保团队熟悉回滚步骤。
答:使用curl带Host和--resolve强制走CDN,观察响应头X-Cache/X-Cache-Status或Age,多次请求看第一次MISS后出现HIT;结合边缘日志确认请求来源与命中率。
答:预先将TTL降到60s并保留原始DNS记录,执行回滚只需将DNS恢复到原始CNAME/IP并清除CDN的配置变更;同时触发流量切回前等待TTL生效并监控。
答:通过版本化静态资源延长TTL、剔除不必要的回源请求、开启压缩与图像优化,并选择按需计费与保留带宽混合策略;定期分析流量热点并调整缓存策略以降低回源和出站流量。
