经常用Redis,你知道主从复制吗?( 二 )


形式:runid 由 40 个字符组成 一般是16进制的字符串
Copyinfo serverrun_id:409b6e9ea2e5c32958de8f365711598c98489f13心跳机制master
指令 PING
周期 repl-ping-slave-period 默认是 10s
作用 判断 slave 是否在线
查询 INFO replication 获取最后一次 slave 连接时间间隔 lag = 0 / 1 属于正常
slave
指令 REPLCONF{offset}
周期: 1s
作用1: 汇报自己的复制偏移量 获取最新的数据变更指令
作用2: 判断 master 是否存活
心跳注意事项当 salve多数掉线 或者网络延时过高时,master 会拒绝所有的同步信息 。
Copymin-slaves-to-write 2# 最小的 slave 数量min-slaves-max-lag 8# 最长的当 slave 的数量小于2 ,或者所有的时延都大于等于 8 时,会强 关闭 master 的血功能来停止数据同步 。
Slave 的数量和延时由REPLCONF{offset} 命令确认 。
完整的主从复制流程

经常用Redis,你知道主从复制吗?

文章插图
 
读写分离在redis主从架构中,Master节点负责处理写请求,Slave节点只处理读请求 。对于写请求少,读请求多的场景,例如电商详情页,通过这种读写分离的操作可以大幅提高并发量,通过增加redis从节点的数量可以使得redis的QPS达到10W+ 。
负载均衡基于主从结构,配合读写分离,由slave分担master负载,并根据需求的变化,改变slave的数量,通过多个从节点分担数据读取负载,大大提高Redis服务器并发量与数据吞吐量
故障恢复当master出现问题时,由slave提供服务,实现快速的故障恢复
数据冗余实现数据热备份,时持久化之外的一种数据冗余方式
高可用基石基于主从复制,构建哨兵模式与集群,实现redis 的高可用方案 。
作者: black_monkey
出处:
https://www.cnblogs.com/monkey-code/p/13111453.html




推荐阅读