Jedis - hello world】的更多相关文章

Redis是常用的key-value存储服务器,Java使用Redis有很多方法,其中官方推荐的是Jedis. 使用Jedis,首先是下载jedis-x.x.x.jar文件并导入工程,然后运行Redis服务器. package jedis; import redis.clients.jedis.Jedis; public class SimpleJedis { public static void testNormal() { Jedis jedis = new Jedis("127.0.0.1…
上节学习了cluster的搭建及redis-cli终端下如何操作,但是更常用的场景是在程序代码里对cluster读写,这需要redis-client对cluster模式的支持,目前spring-data-redis(1.6.4)还不支持cluster,最新的1.7.0 RC1已经有cluster的相关实现了,不过目前尚未正式发布,所以现阶段要使用redis-cluster的话,client最好还是选用原生的jedis,示例代码如下: 配置文件: <?xml version="1.0&quo…
jedis功能强大,但是不能像nodejs一样指定从slave中读数据,使数据量读写量较大时读写分离,减少redis压力. 我们可以利用jedis中的方法封装一个类似于此的方法. github地址: https://github.com/candyleer/jedis-enhance 使用方法如: 指定masterName名称,sentinels 地址,并定义一个连接池,初始化后可以从中获取一个jedis连接,支持哨兵的master切换后重新选举合适的slave,如果当前连接的slave挂了,需…
前段时间说过单例redis数据库的方法,但是生成环境一般不会使用,基本上都是集群redis数据库,所以这里说说集群redis的代码. 1.pom.xml引入jar <!--Redis--> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.8.0</version> </depen…
应用场景 最近在公司做项目,需要对聊天内容进行存储,考虑到数据库查询的IO连接数高.连接频繁的因素,决定利用缓存做. 从网上了解到redis可以对所有的内容进行二进制的存储,而java是可以对所有对象进行序列化的,序列化的方法会在下面的代码中提供实现. 序列化 这里我编写了一个java序列化的工具,主要是对对象转换成byte[],和根据byte[]数组反序列化成java对象: 主要是用到了ByteArrayOutputStream和ByteArrayInputStream: 需要注意的是每个自定…
public class RedisUtil { Logger logger = LoggerFactory.getLogger(RedisUtil.class); private JedisPool pool = null; /** *在构造函数中初始化JedisPool **/ public RedisUtil() { JedisPoolConfig config = new JedisPoolConfig(); // 控制一个pool可分配多少个jedis实例,通过pool.getReso…
Redis 支持很多语言, 例如C#,RUBY,JAVA 等, Jedis是redis的java版本的客户端实现 一个简单的Jedis使用 依赖第三方包jedis-2.7.2.jar commons-pool2-2.3.jar JedisPoolManager 用户管理数据库连接,比如获取或者释放 package com.redis.jedis.project.common; import redis.clients.jedis.Jedis; import redis.clients.jedis…
jedis中的方法名,和Redis的命令几乎一样 1.jar包,作为测试只需要一个jar 2.代码 package com; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Set; import org.junit.Before; import org.junit.Test; import redis.clien…
Jedis 是 Redis 官方首选的 Java 客户端开发包. 实例方法: 1 import redis.clients.jedis.* 1 2 3 Jedis jedis = new Jedis("localhost"); jedis.set("foo", "bar"); String value = jedis.get("foo"); 支持的特效: Sorting Connection handling Commands…
整理 1.字符串 添加:set keyname value 查询:get keyname 拼接:append keyname value 删除:del keyname 添加多个: mset keyname1 value1 keyname2 value2 ... 对值进行+1操作:incr keyname 2.set: 添加:sadd keyname value 删除:srem keyname value 查询所有的值:smembers keyname 判断 who 是否是user集合的元素:si…
首先:Jedis是redis的java版本的客户端. public class JedisTest { //单机版测试Jedis,不使用连接池 @Test public void testJedis(){ //创建Jedis对象 Jedis jedis=new Jedis("192.168.146.128", 6379); //设置对象 jedis.set("key1", "jedis test"); String string=jedis.ge…
一.jedis池的介绍 相信大家都用过线程池或者是jdbc的连接池,使用池可以减少系统在使用所需对象时创建对象的开销,从而提高系统性能和效率.jedis池也是如此,那么我们该如何使用jedis池呢? 二.jedis池的使用 1.所需jar包: commons-pool.jar.jedis-2.1.0.jar2.编写Redis配置文件(redis.properties): 本例中代码如下: #*****************jedis连接参数设置*********************# #r…
这几天没事,就把之前学习的redis代码整理一遍,废话不多说,上步骤. 1.pom.xml引入资源: <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> <version>1.7.0.RELEASE</version> </dependency> <depen…
转自http://www.cnblogs.com/liuling/p/2014-4-19-04.html 使用Java操作Redis需要jedis-2.1.0.jar,下载地址:http://files.cnblogs.com/liuling/jedis-2.1.0.jar.zip 如果需要使用Redis连接池的话,还需commons-pool-1.5.4.jar,下载地址:http://files.cnblogs.com/liuling/commons-pool-1.5.4.jar.zip p…
redis 属性文件配置: redis.host=xx.xx.xx.xx redis.port=6379 #redis.pass=xxxxx redis.maxIdle=10000 redis.maxTotal=100 redis.timeBetweenEvictionRunsMillis=30000 redis.minEvictableIdleTimeMillis=30000 redis.testOnBorrow=true redis.encode=utf-8 redis.expire=604…
package com.util; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import redis.clients.jedis.HostAndPor…
接着上一节,我们通过spring FactoryBean实现redis 3.0集群JedisCluster与spring集成.  http://www.linuxidc.com/Linux/2016-09/135123.htm 引用依赖: <dependency>   <groupId>redis.clients</groupId>   <artifactId>jedis</artifactId>   <version>2.7.3&l…
一 连通性 1. 简单代码测试连通性 Jedis jedis = new Jedis(".......", 6379); String keys = "name"; // 删数据 jedis.del(keys); // 存数据 jedis.set(keys, "snowolf"); // 取数据 String value = jedis.get(keys); 报错超时, 且windows下的cmd测试相关端口 telnet 10.11.20.14…
问题现象(jedis-2.1.0.jar) 基于JedisPool管理Jedis对象,通过get方法获取值,出现key对应的value值错误,例如: K V a a b b Jedis.get(“a”)==’b’; 通过获取key为a的值,但获取了值b来. 同一套代码的项目,分别部署在两个不同的应用集群,其中一个集群出现这种问题,而另一个集群却没有出现. 问题分析 通过表象可以看出,应该是链接池的Jedis对象链接出现错乱而导致的.而两个集群中的其中一个集群出现,这两个集群的唯一区别就是网络环境…
一.NOSQL概要 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库.NoSQL数据库的四大分类 键值(Key-Value)存储数据库 这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据.Key/value模型对于IT系统来说的优势在于简单.易部署.但是如果DBA只对部分值进行查询或更新的时候,Key/value就显得效率低下了. 举例如:Tokyo Cabinet/Tyrant, Redis, Voldemo…
主要学习https://github.com/thinkgem/jeesite.一下代码均参考于此并稍作修改. 1.jedis 首先,需要添加jedis: <!--jedis--> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.8.0</version> </dependenc…
资源链接 Jedis的jar包 Commons-io的jar包 使用方法 代码样例如下,使用前,注意打开redis的server程序. 代码样例 package RedisExample; import redis.clients.jedis.Jedis; public class TestRedis { public static void main(String[] args) { Jedis redis = new Jedis("localhost"); // SimpleExa…
使用Java操作Redis需要jedis-2.1.0.jar,下载地址:http://files.cnblogs.com/liuling/jedis-2.1.0.jar.zip 如果需要使用Redis连接池的话,还需commons-pool-1.5.4.jar,下载地址:http://files.cnblogs.com/liuling/commons-pool-1.5.4.jar.zip package com.test; import java.util.HashMap; import jav…
事务 Jedis中事务的写法是将redis操作写在事物代码块中,如下所示,multi与exec之间为具体的事务. jedis.watch (key1, key2, ...); Transaction t = jedis.multi(); t.set("foo", "bar"); t.exec(); 另外,在事务内部,是不能通过Jedis对象去获取值的,不过可以通过Transaction对象去获取,如下写法: package cn.edu.hdu.jedisdemo;…
添加Jedis依赖 我们可以使用以下三种方式来添加Jedis依赖. 1.下载jar文件 从http://search.maven.org/下载最近的jedis包和Apache Commons Pool 2 2.0依赖包. 2.从源码中构建 以下方式会构建最新的Jedis版本. 首先.克隆GitHub项目 很简单,在命令行输入git clone git://github.com/xetorthio/jedis.git命令即可. 然后.使用maven构建项目 在使用maven打包之前,需要先通过单元…
原来项目中有用到Redis用作缓存服务,刚开始时只用一台Redis就能够满足服务,随着项目的慢慢进行,发现一台满足不了现有的项目需求,因为Redis操作都是原子性这样的特性,造成有时同时读写缓存造成查询效率的下降.但是由于我们现在用的还是2.X版本,还是没有集群功能的(Redis作者在3.0版本中已经加入了集群功能), 因此只能使用2.x版本中自带的一个叫做ShardedJedis的来实现分布式缓存. ShardedJedis是通过一致性哈希来实现分布式缓存的,通过一定的策略把不同的key分配到…
首先不得不服Spring这个宇宙无敌的开源框架,几乎整合了所有流行的其它框架,http://projects.spring.io/spring-data/从这上面看,当下流行的redis.solr.hadoop.mongoDB.couchBase... 全都收入囊中.对于redis整合而言,主要用到的是spring-data-redis 使用步骤: 一.pom添加依赖项 <dependency> <groupId>org.springframework.data</group…
第一步:到git下载jedis源码,如果你用maven或者gradle,那么直接下官方的即可,地址:https://github.com/xetorthio/jedis:如果你用ant,下载这个:https://github.com/langtianya/jedis 第二步:把源码项目导入你的ide,我用的是eclipse ,导入完成之后,找到如下图目录, 你会发现tests目录下有很多的官方例子. 第三步:接下来搭建一个redis服务器测试下这些例子吧,搭建redis服务器请参考文章:Redi…
首先不得不服Spring这个宇宙无敌的开源框架,几乎整合了所有流行的其它框架,http://projects.spring.io/spring-data/从这上面看,当下流行的redis.solr.hadoop.mongoDB.couchBase... 全都收入囊中.对于redis整合而言,主要用到的是spring-data-redis 使用步骤: 一.pom添加依赖项 <dependency> <groupId>org.springframework.data</group…
1.RedisCache.java package cn.itcast.mybatis.dao; import java.util.Date;import java.util.HashMap;import java.util.HashSet;import java.util.Map;import java.util.Set; import org.apache.commons.lang3.StringUtils; import redis.clients.jedis.Jedis;import r…