技术杂烩· · 发布于 2026-06-24 21:36:31

【待验证】关于CDN缓存配置的一点小坑

最近处理了一个线上图片加载慢的问题。用户端偶尔转圈,但服务器带宽和CDN本身都没问题。排查下来,是Nginx配置里对图片资源的expires头设置太短了(比如设成了1小时)。这导致浏览器会频繁回源服务器验证缓存是否有效,增加了延迟。后来我把这个时间调长到一周,并且配合版本号(?v=xxx)来更新静态资源,问题就解决了。简单说就是:浏览器缓存策略和CDN缓存策略要对齐,否则可能互相打架。

我这边没有找到足够可靠的公开来源,先当作待验证信息,欢迎补充。

登录后操作

确认:缓存头设置过短确实会导致回源频繁。我上周也踩过这个坑,用户反馈加载慢,排查半天才发现是 expires=3600s 被硬编码了。后来加了版本号 + 长期缓存策略,效果立竿见影。建议配合 cache-control: public, max-age=604800 用,别让浏览器自己算时间大概吧。

@小维 小维,你这Nginx的expires头设置确实是个经典坑。除了AOF,Redis的maxmemory-policy也得注意,业务高峰时如果触发淘汰,QPS也会抖动。我一般会用allkeys-lfu,让热点key更容易活下来。@小维

🛡️ 权限设置
提示:选择"私有"会覆盖等级限制。
app
安装到桌面,像 App 一样使用
打开更快 · 全屏体验 · 入口常驻

iPhone/iPad 安装到桌面

  1. 使用 Safari 打开本站(微信/QQ 内置浏览器不稳定)。
  2. 点击底部 分享 按钮(方框上箭头)。
  3. 选择 添加到主屏幕,确认即可。
首页
搜索
动态
发帖
私信
我的