当前位置:网站首页>Redis 主从同步
Redis 主从同步
2022-07-01 22:58:00 【Mar丶流年】
概念
runID 每一个redis实例的唯一标识,不知道对方runID 则以?代替
offset 复制进度 -1 代表第一次复制
第一次主从同步
由从实例发送 pysnc 告知主实例第一次连接
主实例将offset,和runID发送给从库
主实例再通过bgsave生成全量RDB,生成RDB期间及之后的操作命令写入到repl buffer
将RDB发送给从实例
从实例执行完RDB后,主实例再将repl buffer发送给从实例
主从网络闪断的恢复过程(增量复制)
主实例和从实例上都有一个环形缓冲区(repl_back_log)
主实例中的repl_back_log记录自己写到那里
从实例中的repl_back_log记录自己读到那里
主实例每执行一条命令会往repl_buffer,repl_back_log中写入记录
当主从恢复连接后。从实例将自己的已经读取的位置(slave_repl_offset)发送给主实例
主实例根据自己写到的位置(master_repl_offset),找到从实例缺失的数据(master_repl_offset - slave_repl_offset 区间段的数据) 发送给从实例同步
主从级联
在一主多从的模式下,如果数据同步都由主实例去同步,主实例承担比较大的压力
这时候可以将部分的同步任务交给先同步的实例去同步给未同步的实例。
将主实例比喻成老板,从实例比喻成员工,老板给员工分配任务要一个一个分配
但是如果将员工提拔为(总经理,总裁),那么老板把任务分配给它两,它两再分配给员工,这样就减轻了老板的压力
注意事项
由于 repl_back_log 是环形缓冲区
环形缓冲写完一个周期就会开始覆盖数据
如果主实例的写入速度大于从实例的读取速度,可能造成从实例还未读取的数据被主实例新写的操作覆盖了
所以合理设置环形缓冲区的大小很重要(repl_backlog_size)
查了下资料,一般设置成 (主实例写入命令速度 * 操作大小 - 主从网络传输命令速度 * 操作大小) * 2
边栏推荐
- 2022 crane driver (limited to bridge crane) examination questions and simulation examination
- Matplotlib常用图表
- win 10 mstsc连接 RemoteApp
- 关于游戏性能优化的一些感想
- 实在RPA:银行数字化,业务流程自动化“一小步”,贷款审核效率“一大步”
- Switch to software testing, knowing these four points is enough!
- Daily three questions 6.28
- CKS CKA CKAD 将终端更改为远程桌面
- “35岁,公司老总,月薪2万送外卖“:时代抛弃你,连声再见都没有
- Daily three questions 6.29
猜你喜欢
![Jerry's burning of upper version materials requires [chapter]](/img/65/fcd804e00dc08a2bd056e8e6493829.png)
Jerry's burning of upper version materials requires [chapter]
![Jielizhi, production line assembly link [chapter]](/img/5f/9ea7fd3b93df1fd3ecbfc1b669c831.png)
Jielizhi, production line assembly link [chapter]

CKS CKA CKAD 将终端更改为远程桌面

Yoga27 multidimensional all-in-one computer with excellent appearance and high-end configuration

STM32F030F4驱动TIM1637数码管芯片

2022安全员-C证考试题模拟考试题库及模拟考试

Istio、eBPF 和 RSocket Broker:深入研究服务网格

mt管理器测试滑雪大冒险

神经网络物联网的发展趋势和未来方向

实在RPA:银行数字化,业务流程自动化“一小步”,贷款审核效率“一大步”
随机推荐
众昂矿业:发展以氟化工为主的特色化工产业具有先天优势
Yoga27 multidimensional all-in-one computer with excellent appearance and high-end configuration
openresty 负载均衡
【无标题】
什么是马赛克?
2022 safety officer-c certificate examination question simulation examination question bank and simulation examination
Behind sharing e-commerce: the spirit of CO creation, symbiosis, sharing, CO prosperity and win-win
AAAI22 | 结构标记和交互建模:用于图分类的“SLIM”网络
Airserver latest win64 bit personal screen projection software
Who do you want to know when opening a stock account? Is it safe to open an account online?
Notes to problems - file /usr/share/mysql/charsets/readme from install of mysql-server-5.1.73-1 glibc23.x86_ 64 c
Notes on problems - /usr/bin/perl is needed by mysql-server-5.1.73-1 glibc23.x86_ sixty-four
Istio, ebpf and rsocket Broker: in depth study of service grid
纪念成为首个DAYUs200三方demo贡献者
Matplotlib常用设置
win 10 mstsc连接 RemoteApp
The online beggar function of Japanese shopping websites
Matplotlib common settings
Typescript enumeration
CADD课程学习(3)-- 靶点药物相互作用



