Redis的优势
- MySQL读写慢,Redis内存数据库,读写速度快。
- 少量的数据要经常读写,尤其是读操作,读写速度要求高。
- 丰富的数据结构,Redis支持5种数据结构,MySQL字段变化,需要手动维护,比较繁琐。
- 数据持久化,数据全部放在内存,不安全。
- Redis操作是原子性的,支持对几个操作合并后的原子操作,还支持事务。
Redis数据结构
1. string
Key=>Value(string)
Redis是二进制安全,可以接收任何二进制数据,例如JPEG图片或者JSON字符串,数据长度512M
key Value
Tom 98
Red 94
Jack 80
应用场景:电商网站商品分类
细节:访问频率高,数据不经常变动,放在Redis
Key Value
"category" {"常用分类":A,"潮流女装":B,..}
具体流程
1、网络是否可用
2、通过API获取服务器中的Redis缓存
3、本地是否有缓存数据,有的话到5,没有到6
4、APP展示返回数据并在本地缓存
5、用本地缓存展示数据
6、显示网络不可用
hash 存储对象的数据
Key是唯一的,Value是一个hashmap结构
学号,对应一个学生的全部信息
string
key:学号 value:信息的JSON串
弊端:改信息需要遍历,增加了没必要的性能开销和复杂性
key:学号+字段(姓名,年龄等等) value:字段对应的值
弊端:大量的key-value,内存开销大
hash
hgetAll id