使用jedis客户端连接redis,单机版和集群版
单机版
1.入门实例
@Test
public void testJedis(){
//创建一个jedis对象,需要指定服务的ip和端口号
Jedis jedis=new Jedis("192.168.25.11",6379);
//直接操作数据库
jedis.set("str","nihao");
//关闭
jedis.close();
}
存值
@Test
public void testGetJedis(){
//创建一个jedis对象,需要指定服务的ip和端口号
Jedis jedis=new Jedis("192.168.25.11",6379);
//直接操作数据库
String str = jedis.get("str");
System.out.println(str);
//关闭
jedis.close();
}
取值
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<jedis.version>2.7.2</jedis.version>
</dependency>
pom依赖
这样使用的话,每次都需要创建连接和关闭连接,耗费性能,所以一般实际项目中我们一般会采用连接池的方式进行开发
2.使用数据库连接池的方式操作redis
@Test
public void testJedisPool(){
//创建连接池(单例),需要指定服务ip和端口号
JedisPool pool=new JedisPool("192.168.25.11",6379);
//从连接池中获得连接
Jedis resource = pool.getResource();
//使用Jedis操作数据库(方法级别使用)
String str = resource.get("str");
System.out.println(str);
//一定要关闭Jedis连接
resource.close();
//系统关闭前关闭连接池
pool.close();
}
使用数据库连接池的方式操作redis
集群版
1.直接使用
public void testRedisCluster() {
//创建一个JedisCluster对象,构造参数Set类型,集合中每个元素 是一个HostAndPort类型
Set<HostAndPort> nodes=new HashSet<>();
nodes.add(new HostAndPort("192.168.25.11",7001));
nodes.add(new HostAndPort("192.168.25.11",7002));
nodes.add(new HostAndPort("192.168.25.11",7003));
nodes.add(new HostAndPort("192.168.25.11",7004));
nodes.add(new HostAndPort("192.168.25.11",7005));
nodes.add(new HostAndPort("192.168.25.11",7006));
JedisCluster jedisCluster=new JedisCluster(nodes);
//直接使用JedisCluster操作redis,自带连接池,JedisCluster可以是单例的
jedisCluster.set("nihao","你好");
System.out.println(jedisCluster.get("nihao"));
//系统关闭前,关闭JedisCluster.
jedisCluster.close();
}
连接redis集群
使用Spring整合redis集群
<bean class="redis.clients.jedis.JedisCluster" id="jedisCluster">
<constructor-arg name="nodes">
<set>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.11"/>
<constructor-arg name="port" value=""/>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.11"/>
<constructor-arg name="port" value=""/>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.11"/>
<constructor-arg name="port" value=""/>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.11"/>
<constructor-arg name="port" value=""/>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.11"/>
<constructor-arg name="port" value=""/>
</bean>
<bean class="redis.clients.jedis.HostAndPort">
<constructor-arg name="host" value="192.168.25.11"/>
<constructor-arg name="port" value=""/>
</bean>
</set>
</constructor-arg>
</bean>
<bean class="com.taotao.jedis.JedisClientCluster" id="jedisCluster"/>
Spring配置文件中配置集群信息和客户端
private JedisCluster jedisCluster;
@Before
public void testBefore(){
ClassPathXmlApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext("Spring/applicationContext-redis.xml");
jedisCluster=classPathXmlApplicationContext.getBean(JedisCluster.class);
}
@Test
public void testJedisSping(){
jedisCluster.set("11","11");
System.out.println( jedisCluster.get("11"));
}
测试代码
使用jedis客户端连接redis,单机版和集群版的更多相关文章
- (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
http://blog.csdn.net/yerenyuan_pku/article/details/72863323 我们知道Jedis在处理Redis的单机版和集群版时是完全不同的,有可能在开发的 ...
- Redis单机版以及集群版的安装搭建以及使用
1,redis单机版 1.1 安装redis n 版本说明 本教程使用redis3.0版本.3.0版本主要增加了redis集群功能. 安装的前提条件: 需要安装gcc:yum install g ...
- JedisClient操作redis 单机版和集群版
一.在pom文件中添加依赖 <!-- https://mvnrepository.com/artifact/redis.clients/jedis --> <dependency&g ...
- Redis单机版和集群版的安装和部署
1.单机版的安装 本次使用redis3.0版本.3.0版本主要增加了redis集群功能. 安装的前提条件: 需要安装gcc:yum install gcc-c++ 1.1 安装redis 1.下载re ...
- redis单机版和集群版搭建笔记-简略版
搭建单机版: 解压 tar -zxf redis-3.0.0.tar.gz 编译 cd redis-3.0.0 安装 make install prefix=/usr/local/redis-inst ...
- 项目里面加入redis单机版 和集群版的配置
第一步: 如果你是maven项目,你直接配置就可以了,如果不是需要下载这个包 jedis包 <!-- Redis 客户端 --> <dependency> ...
- 国际站中国区,孟买上Redis 4.0 集群版
信息摘要: 国际站中国区,孟买上线Redis 4.0 集群版适用客户: 所有用户版本/规格功能: redis 4.0 集群版产品文档: https://www.alibabacloud.com/hel ...
- redis在项目中的使用(单机版、集群版)
1.下载jar包:jedis-2.6.2.jar 2.代码: JedisDao.java: package com.test.www.dao; public interface JedisDao { ...
- shiro的单机版 和 集群版
在我们的开发当中 我们一般权限都是个 比较繁琐 但又必不可少的 一部分 [不管我们的 数据库设计 还是我们采用何种技术 我们的权限库表 大多都是大同小异 业务逻辑也是如此] 在我们不使用任何框架 ...
随机推荐
- 深挖JDK动态代理(二):JDK动态生成后的字节码分析
接上一篇文章深挖JDK动态代理(一)我们来分析一下JDK生成动态的代理类究竟是个什么东西 1. 将生成的代理类编程一个class文件,通过以下方法 public static void transCl ...
- 洛谷P3338 力
题意: 解: 介绍两种方法. 首先可以把那个最后除的qi拆掉. ①分前后两部分处理. 前一部分可以看做是个卷积.下面的平方不拆开,直接看成gi-j即可. 后一部分按照套路,把循环变量改成从0开始,反转 ...
- java ssl 使用不同的加密套件,对性能影响很大
一直以来都是使用java默认的[加密套件]来处理ssl请求,突然有一天我尝试显式的设置了一组加密套件后,发现图片显示的速度明显快了一倍左右. 经过使用几组不同的加密套件测试后,发现使用 TLS_ECD ...
- 团体程序设计天梯赛(CCCC) L3014 周游世界 BFS证明
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- Gym102082 G-What Goes Up Must Come Down(树状数组)
Several cards with numbers printed on them are lined up on the table. We’d like to change their orde ...
- phpcms 标签含义大全
{template "content","header"} ---------- 调用根目录下phpcms\template\content\header ...
- mysql存储过程造数据取一个基准用户的各种类型都取一条数据作为基准数据,循环插入
CREATE DEFINER=`user`@`%` PROCEDURE `create_upload_data`(in start_userid integer,in create_counter i ...
- label与input之间的对应
实现点击文字对应的框可以被选中,再点击一下文字框又取消选中 label的for属性与input的id属性值对应,即可实现.
- 缓存淘汰策略之LRU
LRU(Least recently used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”. 1. 新数据插入到链表头部: ...
- 20165232 2017-2018-2《Java程序设计》课程总结
20165232 2017-2018-2<Java程序设计>课程总结 每周作业链接汇总: 我期望的师生关系 学习基础和c语言基础调查 预备作业3 Linux安装及学习 第一周学习总结 第二 ...