CDN开启后网站变慢怎么办?常见配置误区解析。
网站接入CDN后反而变慢,多因缓存规则误配(动态接口被缓存、静态缓存时间过短)、回源节点调度绕远及回源协议与源站不一致;改为动态请求不缓存、图片缓存七天、源站就近、回源协议对齐后,首页加载由五六秒降至1.2秒。
上周三晚上十点多,老李给我打电话,说他那个卖手冲咖啡豆的小破站接了 CDN 之后,首页打开要转五六秒,比没接的时候还慢,问我是不是被服务商坑了。我当时正蹲在楼下便利店门口啃关东煮,让他把控制台截图发我,一看就乐了。
第一个坑就在缓存规则。他图省事,直接选了「缓存所有内容」,连 /api/cart 那种加购物车的动态接口都给缓存了,用户加进去的东西一会儿又没了。然后静态图片的缓存时间呢,他又手滑设成 60 秒,相当于每隔一分钟 CDN 就老老实实回一趟源站——那你这 CDN 不就变成一层多余的收费站了吗,图啥。
第二个坑是回源。他源站在香港,CDN 那边开了「全球加速」,结果国内用户被调度到新加坡节点去了,绕一大圈。我看他后台的响应头,TTFB 直接干到三秒多。
还有个特别常见的,就是 HTTPS 那一跳。他源站只有 http,CDN 这边强制 https,回源的时候协议不匹配,每次都要多握一次手。我见过更离谱的,有人把 gzip 和 br 全关了,说是「怕压缩出错」,然后一个 2MB 的首页硬传。
调的时候其实没花多久:动态请求全走不缓存,图片七天,源站换成上海那边的,回源协议跟源站对齐。第二天中午他发微信过来,说首页 1.2 秒。所以这东西真不是开了就快,配置错了不如不开,纯给用户加延迟。
原文链接:https://www.gj0.com/thread-1675.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。