1、Redis 的持久化机制是什么?各自的优缺点?
- 缺点:如果形成快照5分钟后,还没有进行下一次备份,redis就宕机了,那么这5分钟的数据就丢了。
- 优点:快照形式占用磁盘空间较少,而且是靠而哇哦的线程去做的快照备份,对redis性能不会有太大损耗。
- 缺点:占用空间比快照形式大,而且当日志文件较大时,对redis的性能会有影响
- 优点:实时性高
2、redis 过期键的删除策略?
- 缺点:对redis的性能会有损耗。
- 缺点:比较占用空间
- 缺点:如果需要删除的key很多,对redis性能的损耗比立即删除还要大。
3、Redis 常见异常问题和解决方案(雪崩,穿透...)
- ---->解决方案:避免让所有的key同时过期,例如热点数据(首页、官网)不设置过期时间。这个需从架构层面考虑优化,或者说编写定时任务,定期从缓存里同步数据。
---->解决方案:
- 1、对key值先进行校验。(比如说证件号码,如果出现格式错误,或者说取值范围不对,或者构造形式不对等等,直接返回错误,不进行数据库查询)
- 2、使用布隆过滤器。布隆过滤器也是redis提供的一种数据结构,他能够从海量数据(上千万)中快速判断这个数据存不存在(准确率不是百分之百)。 将数据库所有id预先放到布隆过滤器内,每次查询先看布隆过滤器里边有没有,有的话再查,没有就不查。