Redis作为数据库和作为缓存的选择,线上怎么优雅使用?

Redis作为数据库使用有什么优缺点?

优点

没有Scheme约束(就像mysql建立数据表,字段数据类型、长度等),数据结构的变更相对容易,一开始确定数据类型, 抗压能力强,性能极高,10万/qps(比如一些互联网项目,你的功能会不断迭代,字段的属性类型一开始不能确定)

缺点

没有索引,没有外键,缺少int/date等基本数据类型,多条件查询需要通过集合内联(sinter,zinterstore) 和连接间接实现开发效率低,可维护性不佳

Redis作为缓存的使用,搭配数据库使用的两种方案

jedis整合使用方案 set key,value [“11”,“22”] 第一层在缓存进行查询,如果得到数据则直接返回, 第二层在数据库进行查询,并且刷新缓存,方便下次查询 ["33,“44”]

作为mybatis/hibernate二级缓存使用方案,一级缓存:sqlSession,进程缓存,单次链接有效

图解加Redis前后的架构区别

1:原有用户发出web请求到dal 就是数据持久化层 访问DB数据库 这种架构DB压力很大

2:衍生到会先走缓存 缓存存在放回 不存在再走持久化层到BD

缓存存在放回 不存在再走持久化层到BD

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/q736317048/article/details/113826961
今日推荐