Redis原理¶
1 数据持久化¶
- Redis 支持2种持久化方式,RBD(快照方式),AOF(追加写日志方式)
- RBD方式可能会遗失数据,但性能高;AOF方式会将改变redis数据状态的命令写入文件,性能有影响
- 修改配置文件Redis.conf文件来改变持久化策略,默认开启RDB方式
2 缓存¶
2.1 缓存击穿¶
- 缓存击穿是指一个热点数据在过期的瞬间有大量请求到来,这时数据库的访问压力瞬间变大。
2.2 缓存穿透¶
- 缓存穿透是指在数据库中都没有的数据,缓存中也没有数据,请求就来到了持久化层(如数据库)。
- 解决办法:
- 使用布隆过滤器
- 缓存空结果
2.3 缓存雪崩¶
- 缓存雪崩是指缓存中数据大批量到过期时间,而查询数据量巨大,引起数据库压力过大甚至宕机。和缓存击穿不同的是,缓存击穿指并发查同一条数据,缓存雪崩是不同数据都过期了,很多数据都查不到从而查数据库。