【Redis】Redis学习(四) Redis Sentinel模式详解

  

  主从模式的弊端就是不具备高可用性,当master挂掉以后,Redis将不能再对外提供写入操作,因此sentinel应运而生。

  Redis Sentinel是Redis官方提供的集群管理工具,主要有三大功能:

  1. 监控:能持续监控Redis的主从实例是否正常工作;
  2. 通知:当被监控的Redis实例出问题时,能通过API通知系统管理员或其他程序;
  3. 自动故障恢复:如果主实例无法正常工作,Sentinel将启动故障恢复机制把一个从实例提升为主实例,其他的从实例将会被重新配置到新的主实例,且应用程序会得到一个更换新地址的通知。
  4. 配置提供:因为sentinel保存着Redis主从的信息,所以Redis可以从sentinel那获得所有的配置信息。

  Redis Sentinel是一个分布式系统,可以部署多个Sentinel实例来监控同一组Redis实例,当然只要有一个Sentinel实例就可以完成上面的功能,当然一个sentinel实例也是不具备高可用性,所以一般也会搭建sentinel集群。

一、Redis sentinel模式搭建

  https://redis.io/topics/sentinel讲的很详细了,照做即可,这还有中文版的,不过版本低了一点,依然可以用,地址为:http://doc.redisfans.com/topic/sentinel.html

二、Redis sentinel的Java客户端连接

  sentinel就可以满足一般生产的需求了,所以开发过程中可以使用:

Set<String> sentinels = new HashSet<>(
    Arrays.asList("ip:port", "ip:port", "ip:port"));
GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig();
//此处对poolConfig进行设置
JedisSentinelPool pool = new JedisSentinelPool("yiwangzhibujian", sentinels, poolConfig);
Jedis jedis = pool.getResource();
//使用jedis进行操作
//使用完直接close即可,会自动判断,若单个连接则关闭,在连接池内则归还
jedis.close();

  这样就可以了。

转载于:https://www.cnblogs.com/yiwangzhibujian/p/7053848.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值