Redis 高并发方案

目前后端用的缓存,主流的有Redis,对于高并发的系统,实际上会遇到以下的几个问题:
(前提是一般的业务代码中,缓存空则去请求数据库)
1、缓存雪崩现象:由于访问了没有缓存,或者已经过期的KEY,导致大量请求到达数据库
2、缓存击穿:单个KEY的高并发访问,高负载导致命中丢失,大量并发查询到达数据库

so,如何设计
  • 针对第一个问题,围绕着解决缓存为空的空窗期,有两种方案:
    一、读写分离。业务代码只负责读,定时脚本负责写


二、设置两个过期时间,一个是业务逻辑上的过期时间,另一个是相对滞后的实际过期时间,在两个时间点之间,对缓存进行更新


  • 针对第二个问题,把单KEY节点的负载访问,随机分散到几个缓存副本节点中。更新的时候,缓存副本全部同步更新。


以上。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

相关阅读更多精彩内容

友情链接更多精彩内容