SEO 百科

Redis

本页目录

Redis

Redis 是内存数据结构服务,放在应用与数据库之间,官方对它的描述是把键存在内存里、可选持久化到磁盘,用作数据库、缓存与消息媒介[1]。建站场景里它最常承担的是对象缓存与会话存储。

它解决的是重复计算

动态页的一次生成往往包含同样的几段查询:栏目结构、文章正文、菜单、侧栏统计。这些结果被放进 Redis 后,下一次请求不再回数据库,响应时间下降[1]。加载性能属于核心 Web 指标那一层,减少等待即受益[2]。

页面级缓存与对象缓存不是一回事。前者在代理层直接返回整页 HTML,后者只省下数据库查询,页面仍需应用拼装[3]。

配置上的四条

过期策略。缓存要有失效时间,不设过期时改完内容仍读旧值。

内存上限与淘汰方式。到顶后按策略淘汰键,不设上限会把机器内存吃干[1]。

序列化大小。整块对象塞进去会让网络与内存都变贵,按需拆键更好。

依赖降级。Redis 不可用时应用要能退回查库,否则缓存故障变成全站故障。

与抓取的关系

缓存稳定时后端不被高并发打穿,5xx 少,抓取链路更顺;Google 说明,服务器错误会被当作降低抓取速度的信号[4]。反过来说,缓存里存着旧页面时,抓取拿到的也是旧内容,改版后要主动清[3]。

常见误用

第一种是把 Redis 当唯一持久存储,进程重启或淘汰策略触发后数据丢失。第二种是所有键都不设过期,内存涨到上限再出问题[1]。第三种是缓存了带登录态与个性化内容的响应,把私人页面发给别人。

附录

参见

参考资料

官方(境外)

  1. 《Redis docs》,Redis。
  2. 《了解 Core Web Vitals 和 Google 搜索结果》,Google 搜索中心。
  3. 《使用 HTTP 缓存提升网站性能》,web.dev。
  4. 《Google 搜索中的 HTTP 与网络错误》,Google 搜索中心。

外部链接