前言
在日常开发中,缓存可以说已经成为必不可少的使用,在很多场景下,缓存带来的效果是非常明显的,可以有效缓解系统洪峰对数据库造成的压力,提升系统整体的接口响应,因此一个比较常用的数据存储设计结构就是:mysql + redis ,即数据库与缓存数据库的搭配
在springcache使用详解一篇中,我们详细剖析了springboot项目中使用redis作为缓存的用法,即通过相关的注解就可以完成很多常见缓存场景
业务痛点
在掌握了mysql + redis 这种常用的缓存设计结构的使用后,有必要作一番更深入的思考,这种缓存架构是不是最好呢?或者说有没有缺陷呢?应该说,在应对10万加的数据量左右的项目来说是绰绰有余了(本人所经手的其中一个项目数据量级),但事事不是绝对的,在生产环境下就出现了下面的一个生产故障
故障描述
A接口,dubbo接口,该接口承载的主要业务功能为:根据用户ID查询用户信息
由于是平台级的SASS应用,