ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
### Redis持久化、主从与哨兵架构详解 https://note.youdao.com/ynoteshare/index.html?id=893c138fa39925f86b374fd46db322b4&type=note&_time=1723283034247 ## **1.主从数据复制原理(执行步骤)** ![](https://pic1.zhimg.com/80/v2-a65af6ab23ea1856d78dddbc6724d1c8_720w.jpg) ①从数据库向主数据库发送sync(数据同步)命令。 ②主数据库接收同步命令后,会保存快照,创建一个RDB文件。 ③当主数据库执行完保持快照后,会向从数据库发送RDB文件,而从数据库会接收并载入该文件。 ④主数据库将缓冲区的所有写命令发给从服务器执行。 ⑤以上处理完之后,之后主数据库每执行一个写命令,都会将被执行的写命令发送给从数据库。 注意:在Redis2.8之后,主从断开重连后会根据断开之前最新的命令偏移量进行增量复制。 ![](https://pic1.zhimg.com/80/v2-db474d5fb11fb58a6b19b9f365a3d7b4_720w.jpg) ## Redis 主从复制、哨兵和集群这三个有什么区别 ![](https://pic4.zhimg.com/80/v2-50ecae5877a2fbbb9abeddd3f0b76faf_720w.jpg) 主从复制是为了数据备份,哨兵是为了高可用,Redis主服务器挂了哨兵可以切换,集群则是因为单实例能力有限,搞多个分散压力,简短总结如下: 主从模式:备份数据、负载均衡,一个Master可以有多个Slaves。 sentinel发现master挂了后,就会从slave中重新选举一个master。 cluster是为了解决单机Redis容量有限的问题,将数据按一定的规则分配到多台机器。 sentinel着眼于高可用,Cluster提高并发量。 **1.主从模式**:读写分离,备份,一个Master可以有多个Slaves。 **2.哨兵**sentinel:监控,自动转移,哨兵发现主服务器挂了后,就会从slave中重新选举一个主服务器。 **3.集群**:为了解决单机Redis容量有限的问题,将数据按一定的规则分配到多台机器,内存/QPS不受限于单机,可受益于分布式集群高扩展性。 哨兵作用于高可用,集群提高并发量