import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPoolConfig; import redis.clients.jedis.JedisSentinelPool; import redis.clients.jedis.JedisShardInfo; import redis.clients.jedis.ShardedJedis; import redis.clients.jedis.ShardedJedisPool; public class JedisSentinelTest { /**
     * 哨兵模式链接redis
     * @throws Exception
     */ public void jedisSentinelPool() throws Exception { Set<String> sentinels = new HashSet<String>(); sentinels.add("哨兵的ip和端口"); sentinels.add("哨兵的ip和端口"); sentinels.add("哨兵的ip和端口"); JedisSentinelPool jedisSentinelPool = new JedisSentinelPool("master的别名", sentinels,"密码"); Jedis jedis = null; try { jedis = jedisSentinelPool.getResource(); jedis.set("hello", "world"); String value = jedis.get("hello"); System.out.println(value); } catch (Exception e) { System.out.println(e); } finally { if (jedis != null) try { jedis.close(); jedisSentinelPool.close(); } catch (Exception e) { e.printStackTrace(); } } } /**
     * 分片模式链接   
     */ public static void jedisTest(){ JedisPoolConfig jedisConfig = new JedisPoolConfig(); jedisConfig.setMaxIdle(20); jedisConfig.setTestOnBorrow(false); JedisShardInfo info79 = new JedisShardInfo("IP","端口"); JedisShardInfo info81 = new JedisShardInfo("IP","端口"); JedisShardInfo info80 = new JedisShardInfo("IP","端口"); info79.setPassword("密码"); info80.setPassword("密码"); info81.setPassword("密码"); List<JedisShardInfo> shards = new ArrayList<>(); shards.add(info79); shards.add(info80); shards.add(info81); ShardedJedisPool shardedJedisPool = new ShardedJedisPool(jedisConfig, shards); ShardedJedis ShardedJedis = null; try { ShardedJedis = shardedJedisPool.getResource(); } catch (Exception e) { e.printStackTrace(); } finally{ ShardedJedis.close(); shardedJedisPool.close(); } ShardedJedis.set("test", "测试"); String aaa = ShardedJedis.get("test"); System.out.println(aaa); } public static void main(String args[]){ jedisTest(); } }

原文:https://blog.csdn.net/qq_14823007/article/details/78820444

测试redis集群的两种方式:分片和哨兵的更多相关文章

  1. redis集群的三种方式

    Redis三种集群方式:主从复制,哨兵模式,Cluster集群. 主从复制 基本原理 当新建立一个从服务器时,从服务器将向主服务器发送SYNC命令,接收到SYNC命令后的主服务器会进行一次BGSAVE ...

  2. springboot2.x 整合redis集群的几种方式

    一.不指定redis连接池 #系统默认连接池 yml配置文件: spring: redis: cluster: nodes: - 192.168.1.236:7001 - 192.168.1.236: ...

  3. Redis 备份数据的两种方式

    既然是数据库,那就一定有数据备份方式了,而且 Redis 是内存形式的数据库,更需要数据备份了,要不然断电数据就全都丢失了. Redis 数据备份有两种方式: RDB(数据快照) AOF(记录操作日志 ...

  4. redis安装集群的2种方式

    redis主从只是数据的备份,当主宕机后不会自动切换从为主,需要手动切换从为主. 哨兵就可以自动切换从为主, 当主数据库遇到异常中断服务后,开发者可以通过手动的方式选择一个从数据库来升格为主数据库,以 ...

  5. eureka集群的两种配置方式:配置文件方式与DNS方式

    eureka client获取serviceUrls(eureka server地址)列表的过程: 1. 根据use-dns-for-fetching-service-urls属性判断是从dns还是从 ...

  6. Redis的持久化的两种方式drbd以及aof日志方式

    redis的持久化配置: 主要包括两种方式:1.快照  2 日志 来看一下redis的rdb的配置选项和它的工作原理: save 900 1 // 表示的是900s内,有1条写入,则产生快照 save ...

  7. Redis数据持久化的两种方式RDB和AOF

    由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁 盘上,当redis重启后,可以从磁盘中恢复数据.redis提 ...

  8. redis做持久化的两种方式,RDB、AOF讲解

    redis的两种持久化方式: 1.RDB方式 概念:在指定的时间间隔内保存数据快照 实现方式: 找到redis的安装目录,修改redis的配置文件(redis.conf):① 修改备份的时间间隔:sa ...

  9. Redis ==> 集群的三种模式

    一.主从同步/复制 通过持久化功能,Redis保证了即使在服务器重启的情况下也不会丢失(或少量丢失)数据,因为持久化会把内存中数据保存到硬盘上,重启会从硬盘上加载数据. 但是由于数据是存储在一台服务器 ...

随机推荐

  1. idea输入法候选区不跟随光标

    环境: win10 idea 2017.04 搜狗8.6 问题: idea编辑区输入法候选区不跟随光标 解决: 输入法改成必应输入法 不行的话不用你动手 我自砸蛋蛋.(保命狗头..)

  2. Xcode 常用调试技巧总结

    NSLog,po命令和普通断点调试相信每个iOS开发者都会,这里就不作介绍了. 一.Memory Graph Xcode8新增:Memory Graph解决闭包引用循环问题 有很多叹号说明就有问题了. ...

  3. java中enum的应用

    package com.demo; public enum TestEnum { A("hello"), B("world"); private String ...

  4. CentOS下yum安装mcrypt错误:No package php-mcrypt available.解决方法

    错误描述: #yum install libmcrypt libmcrypt-devel mcrypt mhashSetting up Install ProcessNo package php-mc ...

  5. JQuery UI datepicker 使用方法(转)

    官方地址:http://docs.jquery.com/UI/Datepicker,官方示例: http://jqueryui.com/demos/datepicker/. 一个不错的地址,用来DIY ...

  6. xcode9报错 Safe Area Layout Guide before iOS9.0

    运行工程的时候会遇到  Safe Area Layout Guide before iOS9.0 这是因为xcode9  storyboard的设置里面多了 个 Safe Area Layout Gu ...

  7. MySQL中模拟oracle中的rownum列

    mysql> select @rn := @rn + 1 as rownum, emp_no, dept_no, from_date, to_date -> from dept_emp, ...

  8. [转] Java DecimalFormat 用法

    我们经常要将数字进行格式化,比如取2位小数,这是最常见的.Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子.下面是一个例子: importjava.text. ...

  9. Package CJK Error: Invalid character code. 问题解决方法--xelatex和pdflatex编译的转换

    Package CJK Error: Invalid character code. 问题解决方法--xelatex和pdflatex编译的转换 解决方法:添加格式说明信息 将下面语句: \docum ...

  10. jota-time 练习

    public static void main(String[] args) { LocalDate now = new LocalDate(); //输出形式为yyyy-MM-dd System.o ...