![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Redis系列深度解读
文章平均质量分 95
程序员朱永胜
这个作者很懒,什么都没留下…
展开
-
Redis系列(一):深入了解Redis数据类型和底层数据结构
缓存:字符串类型可以用于缓存数据,例如缓存数据库查询结果、计算结果等。由于Redis的高性能和快速读写能力,使用字符串类型作为缓存可以大大提高系统的响应速度。通过使用字符串类型的自增命令,可以方便地对计数器进行增加或减少操作。分布式锁:字符串类型可以用于实现分布式锁,保证在分布式环境下的数据一致性和并发控制。通过设置一个唯一的字符串作为锁的值,并利用Redis的原子性操作,可以实现简单而高效的分布式锁机制。会话管理:字符串类型可以用于存储用户的会话信息,例如用户登录状态、购物车内容等。原创 2023-08-12 12:22:44 · 1300 阅读 · 0 评论 -
Redis系列(二):深入解读Redis的两种持久化方式
这个操作在实际执行过程中,是子进程复制了主线程的页表,所以通过页表映射,能读到主线程的原始数据,而当有新数据写入或数据修改时,主线程会把新数据或修改后的数据写到一个新的物理内存地址上,并修改主线程自己的页表映射。但需要注意的是,虽然AOF重写不会阻塞主线程,但它仍然是一个资源密集型操作,可能会占用较多的CPU和内存资源,因此在进行AOF重写时,需要考虑系统的资源情况,避免影响其他业务操作。但需要注意的是,RDB的全量持久化可能会导致某些数据的丢失,因此在选择持久化方式时需要权衡数据的重要性和性能需求。原创 2023-08-13 15:28:08 · 830 阅读 · 0 评论 -
Redis系列(三):深入解读Redis主从同步机制
在这种架构中,存在一个主数据库(主服务器)和一个或多个从数据库(从服务器),主数据库负责处理写操作和读操作,从数据库负责复制主数据库的数据,以提供读取操作和备份。完全同步和部分同步的选择取决于从服务器与主服务器之间的复制状态和数据差距。在主服务器的复制过程中,主服务器会记录一个复制偏移量(replication offset),表示从服务器在主服务器中的数据位置。在完成全量复制后,主从服务器之间会保持一个 TCP 连接,主服务器会将自己的写操作发送给从服务器,从服务器执行这些写操作,从而保持数据一致性。原创 2023-08-17 21:31:03 · 413 阅读 · 0 评论 -
Redis系列(四):哨兵机制详解
当哨兵节点开始怀疑某个节点可能客观下线时,它会向其他哨兵节点发送一个SENTINEL is-master-down-by-addr命令,询问其他哨兵节点是否也认为该节点客观下线。需要注意的是,Redis Sentinel的选举Leader过程受到Paxos算法和Raft算法等分布式一致性算法的影响,以保证在主节点失效时能够选择合适的节点作为新的主节点,从而保持数据的一致性和高可用性。通过以上机制,哨兵节点可以相互发现和通信,共同监控主节点和从节点的状态,并在主节点下线时协同执行故障转移操作。原创 2023-08-21 22:09:15 · 1358 阅读 · 0 评论 -
【深入解读Redis系列】Redis系列(五):切片集群详解
可以看到,由于负载均衡,Slot 2 中的数据已经从实例 2 迁移到了实例 3,但是,客户端缓存仍然记录着“Slot 2 在实例 2”的信息,所以会给实例 2 发送命令。实例 2 给客户端返回一条 MOVED 命令,把 Slot 2 的最新位置(也就是在实例 3 上),返回给客户端,客户端就会再次向实例 3 发送请求,同时还会更新本地缓存,把 Slot 2 与实例的对应关系更新过来。需要注意的是,在上图中,当客户端给实例 2 发送命令时,Slot 2 中的数据已经全部迁移到了实例 3。原创 2023-08-30 13:18:29 · 823 阅读 · 0 评论