一、哨兵模式
哨兵(sentinel)是Redis的高可用性(High Availability)的解决方案:由一个或多个sentinel实例组成sentinel集群可以监视一个或多个主服务器和多个从服务器。当主服务器进入下线状态时,sentinel可以将该主服务器下的某一从服务器升级为主服务器继续提供服务,从而保证redis的高可用性。
二、搭建配置
1、下载windos版本redis安装包: https://github.com/redis-windows/redis-windows/ (我下载的版本是7.2.2)
我采取的方案是:1主+1从+sentinel(监控节点)
第一步:配置Matser节点;
注释掉下面框出来的地方:(默认绑定的是回环地址,默认不能被其他机器访问这里要注释掉)
第二步:配置Slaver节点;
1、修改端口号默认是6379,我这里改成6378为了避免和master节点端口号冲突:
2、增加主从配置:replicaof 127.0.0.1 6379(这里配置主节点=》ip+端口号)
用来复制主节点的缓存信息
第三步:复制出一个redis安装包 当做sentinel
1、修改sentinel.conf :sentinel节点数最好为奇数(这个关系到主节点挂了后,投票选取从节点为主节点的策略)
2、修改投票主节点下线时间,意思就是当多长时间后联系不到主节点才认为主节点挂了。默认30s,这里我修改成了3s
启动三个服务:(这里注意下启动sentinel的时候要修改下start.bat 改成sentinel对应的exe和启动配置文件)
双击start.bat启动即可:
三、整合springboot
redis:
database: 1
sentinel:
master: mymaster
nodes:
- localhost:26379