Redis集群(九):Redis Sharding集群Redis节点主从切换后客户端自动重新连接
2016-12-21 17:04
2426 查看
上文介绍了Redis Sharding集群的使用,点击阅读本文介绍当某个Redis节点的Master节点发生问题,发生主从切换时,Jedis怎样自动重连新的Master节点
一、步骤如下:1、配置三组主从结构的redis集群,参考
2、设置哨兵(某个master节点):哨兵的作用主要是监控master节点的状态,当master节点挂掉时通过选举机制选出一个slave节点成为一个新的master,哨兵的使用可参考 sentinel.conf配置说明,下面的mymaster很重要,表示是master节点的名称,jedis指定master使用该名称,而不是IP+端口
sentinel monitor mymaster 127.0.0.1 6379 1
3、使用ShardedJedisSentinelPool连接池 a) 该类是一个开源项目,地址为:https://github.com/warmbreeze/sharded-jedis-sentinel-pool b) ShardedJedisSentinelPool通过MasterListener线程(有几个哨兵就有几个线程)监控哨兵的状态,如果对应的master节点发生问题,如主从切换,则通过redis的pub/sub该监听器线程 c) MasterListener的run方法调用initPool重置连接池,即连接新的master机器 d) 调用pool.getResource()前发生主从切换,当次redis操作使用新的master机器 e) 调用pool.getResource()后发生主从切换,当次redis操作无效并抛出SocketException,下次redis恢复正常
二、示例代码:由于机器有限,只配置了一台机器,多台原理一样
三、参考文档http://www.tuicool.com/articles/naeEJbv 基于Redis Sentinel的Redis集群(主从&Sharding)高可用方案
http://blog.csdn.net/dc_726/article/details/48084373 Jedis分片Sentinel连接池实验
一、步骤如下:1、配置三组主从结构的redis集群,参考
2、设置哨兵(某个master节点):哨兵的作用主要是监控master节点的状态,当master节点挂掉时通过选举机制选出一个slave节点成为一个新的master,哨兵的使用可参考 sentinel.conf配置说明,下面的mymaster很重要,表示是master节点的名称,jedis指定master使用该名称,而不是IP+端口
sentinel monitor mymaster 127.0.0.1 6379 1
3、使用ShardedJedisSentinelPool连接池 a) 该类是一个开源项目,地址为:https://github.com/warmbreeze/sharded-jedis-sentinel-pool b) ShardedJedisSentinelPool通过MasterListener线程(有几个哨兵就有几个线程)监控哨兵的状态,如果对应的master节点发生问题,如主从切换,则通过redis的pub/sub该监听器线程 c) MasterListener的run方法调用initPool重置连接池,即连接新的master机器 d) 调用pool.getResource()前发生主从切换,当次redis操作使用新的master机器 e) 调用pool.getResource()后发生主从切换,当次redis操作无效并抛出SocketException,下次redis恢复正常
二、示例代码:由于机器有限,只配置了一台机器,多台原理一样
http://blog.csdn.net/dc_726/article/details/48084373 Jedis分片Sentinel连接池实验
相关文章推荐
- redis集群主从切换,jedis客户端如何自动切换访问
- Redis集群_3.redis主从自动切换Sentinel
- Redis集群:redis主从自动切换Sentinel操作实例
- Redis主从复制和集群配置系列之六(redis集群节点新增、删除、重新分配slot实战)
- Elasticsearch之重要核心概念(cluster(集群)、shards(分配)、replicas(索引副本)、recovery(据恢复或叫数据重新分布)、gateway(es索引的持久化存储方式)、discovery.zen(es的自动发现节点机制机制)、Transport(内部节点或集群与客户端的交互方式)、settings(修改索引库默认配置)和mappings)
- Redis集群_3.redis 主从自动切换Sentinel
- redis客户端jedis基于spring搭建单节点或者集群线程池连接
- Redis集群_3.redis主从自动切换Sentinel(转)
- Redis集群redis主从自动切换Sentinel(哨兵模式)
- Redis集群:redis主从自动切换Sentinel
- java使用Redis6–sentinel单点故障主从自动切换
- redis主从切换的集群管理
- oracle客户端连接两节点RAC集群的配置文件
- redis 集群热备自动切换sentinel配置实战
- 我的redis+keepalived主从自动切换配置脚本
- redis集群节点新增、删除、重新分配slot实战
- redis自动主从切换
- redis 主从备份自动切换+java代码实现类
- redis主从切换的集群管理
- ElasticSearch集群未连接 无法发现节点(windows环境)以及windows环境下设置服务 不能自动启动的问题