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集群的两种方式:分片和哨兵的更多相关文章
-
springboot2.x 整合redis集群的几种方式
一.不指定redis连接池 #系统默认连接池 yml配置文件: spring: redis: cluster: nodes: - 192.168.1.236:7001 - 192.168.1.236: ...
-
Redis 备份数据的两种方式
既然是数据库,那就一定有数据备份方式了,而且 Redis 是内存形式的数据库,更需要数据备份了,要不然断电数据就全都丢失了. Redis 数据备份有两种方式: RDB(数据快照) AOF(记录操作日志 ...
-
redis安装集群的2种方式
redis主从只是数据的备份,当主宕机后不会自动切换从为主,需要手动切换从为主. 哨兵就可以自动切换从为主, 当主数据库遇到异常中断服务后,开发者可以通过手动的方式选择一个从数据库来升格为主数据库,以 ...
-
eureka集群的两种配置方式:配置文件方式与DNS方式
eureka client获取serviceUrls(eureka server地址)列表的过程: 1. 根据use-dns-for-fetching-service-urls属性判断是从dns还是从 ...
-
Redis的持久化的两种方式drbd以及aof日志方式
redis的持久化配置: 主要包括两种方式:1.快照 2 日志 来看一下redis的rdb的配置选项和它的工作原理: save 900 1 // 表示的是900s内,有1条写入,则产生快照 save ...
-
Redis数据持久化的两种方式RDB和AOF
由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁 盘上,当redis重启后,可以从磁盘中恢复数据.redis提 ...
-
redis做持久化的两种方式,RDB、AOF讲解
redis的两种持久化方式: 1.RDB方式 概念:在指定的时间间隔内保存数据快照 实现方式: 找到redis的安装目录,修改redis的配置文件(redis.conf):① 修改备份的时间间隔:sa ...
-
Redis ==>; 集群的三种模式
一.主从同步/复制 通过持久化功能,Redis保证了即使在服务器重启的情况下也不会丢失(或少量丢失)数据,因为持久化会把内存中数据保存到硬盘上,重启会从硬盘上加载数据. 但是由于数据是存储在一台服务器 ...
-
Redis集群的三种模式
一.主从模式 通过持久化功能,Redis保证了即使在服务器重启的情况下也不会损失(或少量损失)数据,因为持久化会把内存中数据保存到硬盘上,重启会从硬盘上加载数据. 但是由于数据是存储在一台服务器上的, ...
随机推荐
-
Jquery更改table中的内容(一)
css部分: .tab{ border:solid 1px #00aaee; text-align: left; margin:20px;}.tab tr{ border-top: solid 1px ...
-
Unity中各类物理投射性能横向比较
最近在优化摄像机部分代码,抽了个时间对物理投射这块进行了系统性的测试,发现了不少东西 测试工程下载地址: http://files.cnblogs.com/files/hont/RaycastTest ...
-
出来ios顶部导航掉下来问题
<script type="text/javascript"> setposition(); function setposition(){ var ua = navi ...
-
ARM架构下linux设备树加载的方法
引入设备树后bootloader加载DTB方法: 1. 标准方法 将linux kernel放到内存地址为<kernel img addr>的内存中. 将DTB放到地址为<dtb a ...
-
java中有关流操作的类和接口
一.java操作l流有关的类和接口 1.File 文件类 2.RandomAccessFile 随机存储文件类 3.InputStream 字节输入流 4.OutputStream 字节输出流 5.R ...
-
vue笔记-条件渲染
条件渲染 1:指令v-if单独使用和结合v-else //单独使用 <h1 v-if="ok">Yes</h1> //组合使用 <h1 v-if=&q ...
-
ansible资产配置
参考链接:https://www.cnblogs.com/iois/p/6403761.html ansible主机组的使用,我们在对一个集群进行管理的时候集群会有很多角色,在执行统一命令操作的时候我 ...
-
关于TSql
1.Sql:结构化查询语言(Structrued Query Language) 2.TSql:是Sql语言的另一种版本,且只能在SqlServer中使用.和Sql不同的是,TSql中增加了对变量 ...
-
前端框架之Vue(6)-列表渲染
用v-for把一个数组对应为一组元素 我们用 v-for 指令根据一组数组的选项列表进行渲染. v-for 指令需要使用 item in items 形式的特殊语法, items 是源数据数组并且 i ...
-
python通过sftp远程传输文件
python提供了一个第三方模块paramiko,通过这个模块可以实现两台机器之间的网络连接,sftp是paramiko的一个方法,使用sftp可以在两台机器之间互相传输 拷贝文件.然而paramik ...