springBoot整合Redis哨兵主备模式

 Sentinel 哨兵模式作用

    如果单点redis部署的话,redis挂掉会影响系统的功能,因此需要一个方案来保证总有一台redis恩能够提供服务。而Redis-Sentinel就是官方推荐的解决方案,即部署两台redis,master和slave,二者数据实时同步,并且同时在两台机器上启动两个Sentinel进程来进行监控,一旦master挂掉,则动态切换到slave上进行主备倒换,slave升为master提供服务,保证业务可用性,当之前挂掉的master恢复后,再成为当前master的slave进行备份。

conf配置

    redis的conf文件没有特殊配置,设置为备机的redis增加slave-of配置

    slaveof 127.0.0.16379

    redis配置文件配置

    配置完成后,即可启动

    #启动master redis

    redis-server /etc/redis-cluster/redis-master-6379.conf

    #启动slave redis

    redis-server /etc/redis-cluster/redis-slave-6380.conf

    #启动redis-sentinel

    redis-sentinel /etc/redis-cluster/redis-sentinel_26379.conf

    redis-sentinel /etc/redis-cluster/redis-sentinel_26380.conf

    查看启动信息

    redis连接命令

    $ redis-cli -h host -p port -a password

    info 查看命令

    $ info replication

    $ info sentinel

    可以手动杀掉当前master,通过上述命令验证master切换是否正常。

springBoot配置

添加依赖

    

        org.springframework.boot

        spring-boot-starter-data-redis

    

    

    

        org.springframework.session

        spring-session-data-redis

    

修改配置

# redis

  redis:

    database: 6

    sentinel:

      master: mymaster

      nodes: 10.97.98.128:26380,10.97.3.133:26380

    pool:

      max-active: 8

      max-total: 50

      max-idle: 8

      max-wait: -1

      min-idle: 0

      timeout: 3000

你可能感兴趣的:(springBoot整合Redis哨兵主备模式)