题目
Redis 有什么作用?为什么要用 Redis
答案
@[toc] --- > 如果项目中有用到 Redis 的话,最好结合你的项目来说哈 ## 加入缓存后的数据处理流程 ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/img/20220614144041.png) 1. 如果用户请求的数据在缓存中就直接返回数据 2. 缓存未命中的话就看数据库中是否存在 3. 数据库中存在的话就返回数据并将该数据写入到缓存中 4. 数据库中也不存在的话就返回空数据 ## 缓存的收益和成本分析 **收益**(使用缓存的好处): - 加速读写:缓存通常都是全内存的(例如 Redis、Memcache),而存储层通常读写性能不够强悍(例如 MySQL),通过缓存的使用可以有效地加速读写,优化用户体验 - 降低后端负载:帮助后端减少访问量和复杂计算(例如很复杂的SQL语句),在很大程度降低了后端的负载 **成本**: - 数据不一致性 - 代码维护成本 - 运维成本