一、数据类型
string、hash、list、set、zset
二、持久化
RDB:优点,最大化redis性能,缺点,一旦redis异常退出,会造成数据丢失(默认方式)
AOF
混合持久化方式
三、主从复制
全量复制
增量复制
数据同步:runid、偏移量
四、哨兵机制
主观宕机
客观宕机
多哨兵通信:是通过redis的pub/sub系统实现的,每个哨兵都会往订阅通道的里发送消息,这时候所有其他哨兵都可以消费到这个消息,并感知到其他的哨兵的存在。
五、Cluster集群
容错机制:集群中所有master节点参与投票,如果半数以上节点与其中一个节点连接超时,则认为该节点挂掉。
每个master节点需分配备份节点。
六、优化
1、设置过期时间 expire
2、惰性删除 lazy free
3、慢查询日志 showlog
七、场景
1、string 缓存、计数器、共享session、分布式锁setnx、分布式id、幂等校验
2、hash 商品
3、list 粉丝列表、文章评论列表,lrange 简单实现高性能分页,秒杀(消息队列)
4、set 共同好友,你可能认识
5、zset 排行榜,热搜,前面是名称,后面是热度值
八、问题
如何保证与数据库一致性