目录
前言
- 默认情况下,每台Redis服务器都是主节点;
- 由于个人服务器性能原因,以下的所有操作都是单机集群的概念!在实际工作中并不会这样配置,而是使用哨兵模式来监控!这篇文章的意义主要就是为了让大家了解主从复制这个概念!
概念
- 主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave 以读为主。
- 主要作用:
- 数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。
- 故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。
- 负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接主节点,读Redis数据时应用连接从节点),分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量。
- 高可用(集群)基石:除了上述作用以外,主从复制还是哨兵和集群能够实施的基础,因此说主从复制是Redis高可用的基础。
环境配置(单机集群)
-
基本查看命令
127.0.0.1:6379> ping #测试是否连接成功! PONG 127.0.0.1:6379> info replication #查看当前redis信息 # Replication role:master #角色--主机 connected_slaves:0 #从机数量为0 master_replid:b9565cf2edea63b7e9860f3ef1a170d59ff7a4d4 #唯一标识的id master_replid2:0000000000000000000000000000000000000000 #下面的这些咱不用管他是啥 master_repl_offset:0 second_repl_offset:-1 repl_backlog_active:0 repl_backlog_size:1048576 repl_backlog_first_byte_offset:0 repl_backlog_histlen:0
-
开启三台服务
-
复制三个配置文件:
-
修改以下配置:
- 端口:
- pid名:
- log文件名:
- dump.rdb名:
- 端口:
-
全部启动并查看:
-