第七章-Redis复制的原理和优化

目录
一. 什么是主从复制
二. 主从复制的配置
三. 全量复制和部分复制
四. 故障处理
五. 开发运维常见问题

一. 什么是主从复制

单机的缺点

  • 一旦机器出现故障,系统数据会丢失。影响系统服务。
  • 容量瓶颈(内存)
  • QPS瓶颈
第七章-Redis复制的原理和优化_第1张图片
image.png

一主多从

第七章-Redis复制的原理和优化_第2张图片
一主多从
第七章-Redis复制的原理和优化_第3张图片
image.png

主从复制的作用

  • 数据副本
  • 扩展读性能

总结

  • 一个master可以有多个slave
  • 一个slave只能有一个master
  • 数据流向是单向的,master到slave

二. 主从复制的配置

当一个节点成为了另一个节点的从节点。它原有的数据会被清除。

两种实现方式

  1. slaveof命令
  2. 配置

命令

第七章-Redis复制的原理和优化_第4张图片
添加命令
第七章-Redis复制的原理和优化_第5张图片
取消命令

配置
slaveof ip port #指定主节点ip和端口
slave-read-only yes #只读

第七章-Redis复制的原理和优化_第6张图片
比较

三. 全量复制和部分复制

run_Id

  • redis每次启动都会生成一个run_id 。 如果主节点的run_id变了。会触发全量复制
第七章-Redis复制的原理和优化_第7张图片
image.png

全量复制的开销

  1. bgsave时间
  2. RDB文件网络传输时间
  3. 从节点清空数据时间
  4. 从节点加载RDB的时间
  5. 可能的AOF重写时间
第七章-Redis复制的原理和优化_第8张图片
image.png

四. 故障处理

第七章-Redis复制的原理和优化_第9张图片
image.png
第七章-Redis复制的原理和优化_第10张图片
image.png
第七章-Redis复制的原理和优化_第11张图片
image.png

五. 开发运维常见问题

  1. 读写分离
  2. 主从配置不一样
  3. 规避全量复制
  4. 规避复制风暴

1. 读写分离

第七章-Redis复制的原理和优化_第12张图片
image.png

2. 主从配置不一样

第七章-Redis复制的原理和优化_第13张图片
image.png

3. 规避全量复制

第七章-Redis复制的原理和优化_第14张图片
image.png

4. 规避复制风暴

第七章-Redis复制的原理和优化_第15张图片
image.png

你可能感兴趣的:(第七章-Redis复制的原理和优化)