redis集群

文章目录

目录

文章目录

前言

一、redis主从模式

二、redis哨兵模式

三、redis集群模式-3.0以后有的

总结



前言

如何关闭redis服务

(1)通过redis-cli连接服务器后执行shutdown命令,则执行停止redis服务操作。

(2)可以使用shutdown命令关闭redis服务器外,还可以使用kill+进程号的方式关闭redis服务。

(3)不要使用Kill 9方式关闭redis进程,这样redis不会进行持久化操作,除此之外,还会造成缓冲区等资源不能优雅关闭,极端情况下会造成AOF和复制丢失数据的情况


一、redis主从模式

是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave 以读为主。
主要作用:
①数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。
②故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。
③负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接主节点,读Redis数据时应用连接从节点),分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量。
④高可用(集群)基石:除了上述作用以外,主从复制还是哨兵和集群能够实施的基础,因此说主从复制是Redis高可用的基础。
 

redis集群_第1张图片

实现

一主两从:  三台服务器【这个三台之间可以相互访问】。  我这里为了操作方便,就在一台服务器启动三个redis服务。 只需要修改端口号即可。

创建三个redis配置文件。
1. 修改端口号
2. 修改rdb文件的名称。
3. 修改aof的文件名

redis集群_第2张图片

然后启动三个服务  确定一个为主节点 

redis-cli -p 端口号 分别连接上三个服务

在从节点上输入 表示把当前节点变为主机点的从节点

slaveof 主节点ip 主节点port

配置完成

二、redis哨兵模式

我们从上面的主从模式 我们知道该模式,如果主节点宕机后,需要人为的选举主节点。 从节点不会主动变成主节点。 哨兵模式 会在剩下的从节点中选举一个作为主节点。

哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的 进程 ,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。

实现

修改 或者创建sentinel.conf

更改里面的配置

 redis-sentinel sentinel.conf   #启动该服务

测试 把主节点使用shutdown命令关闭 然后该服务就会在从节点投票选取一个从节点当主节点 

三、redis集群模式-3.0以后有的

如果后期写操作也比较多,势必会操作主节点压力比较大。而且上面主节点要把数据同步到所有从节点。所以出现了多主多从模式。

redis集群_第3张图片

配置实现

注意集群模式默认最低为三组

搭建一个三主三从的redis集群。7001~7006

依次更改这些来标识服务

端口号

rdb文件名

aof文件名[必须开启aof模式]

 更改配置文件中的权限打开

cluster-enabled  yes

cluster-config-file nodes-端口号.conf

启动各个配置文件服务

分配槽以及主从关系

redis-cli --cluster create --cluster-replicas 1 192.168.223.158:7001 192.168.223.158:7002  192.168.223.158:7003  192.168.223.158:7004 192.168.223.158:7005  192.168.223.158:7006

测试集群 随便进一个集群中的主节点 存数据的时候会根据对应的hash计算 得出存入符合范围的槽里

redis集群_第4张图片


总结

你可能感兴趣的:(Redis,数据库,redis)