首先来说Redis的话是一个基于内存的高性能K-V数据库,并且开源免费,Redis支持五种数据类型,非集合的是String,集合的有List、Set、Zset、Hash
Redis支持持久化AOF、RDB,Redis默认的话是使用RDB做持久化,建议采用AOF方式,因为AOF支持三种追加方式能够更好的恢复信息,分别是appendfsync:alawys、everysec、no,而alawys会严重降低redis的效率,所以使用everysec。
Redis4.0之后优化了持久化的方式可以支持RDB+AOF同时进行,但是产生的文件格式不太友好。
Redis的过期策略:因为redis中设置过期时间后redis会进行定期删除+惰性删除,但是这两种方式有volatile:Iru(最近最少使用)、ttl(即将过期)、random;allkeys:Iru、random。我们常用的是volatile-Iru。
另外Redis可以设置主从模式来做数据备份:一主两从,当主机宕机时,通过选举机制在slave中选出新的master(主机宕机时还又分为了主观宕机和客官宕机)
Redis事务:ACID:原子性、一致性、隔离性、持久性
缓存雪崩和缓存穿透问题的话首先要说的是这两者的区别,他们最主要的区别就是
添加链接描述
缓存穿透是大面积请求的数据不存在于数据库和缓存中,导致数据库压力激增而崩溃,有效的解决办法一是使用布隆过滤器,因为布隆过
本文深入探讨Redis,涵盖其作为内存数据库的角色、持久化策略如AOF与RDB、过期策略、主从模式、缓存雪崩与穿透的解决方案、一致性Hash在集群中的应用以及并发控制。同时,文章讨论了如何保证缓存与数据库的双写一致性,并提及Redis的Java客户端Jedis。
最低0.47元/天 解锁文章
377

被折叠的 条评论
为什么被折叠?



