(转)淘淘商城系列——使用Jedis操作集群
http://blog.csdn.net/yerenyuan_pku/article/details/72862084
通过上文的学习,我相信大家应该已经知道如何搭建Redis集群了,本文我将为大家介绍如何测试集群。
首先使用如下命令来启动Redis集群。
./redis-trib.rb create --replicas 1 192.168.25.128:7001 192.168.25.128:7002 192.168.25.128:7003 192.168.25.128:7004 192.168.25.128:7005 192.168.25.128:7006
Redis集群启动之后,如下图所示,可以看到192.168.25.128:7001、192.168.25.128:7002、192.168.25.128:7003这三个节点是主节点,另外三个节点是从节点。槽号为0-5460的卡槽被分配到了192.168.25.128:7001上,5461-10922被分配到了192.168.25.128:7002上,10923-16383被分配到了192.168.25.128:7003上。 
既然集群已经启动好了,我们使用redis客户端随意连接一台设备进行测试,比如我们连接192.168.25.128:7006这台设备(这是个从节点,从属于192.168.25.128:7003),如下所示(注意:一定要加上参数”-c”否则没办法重定向到其它节点)。
连接上之后,我们先来保存key1,它的值是123,如下所示,可以看到,这个key1经过crc16算法并对16384进行求余之后的数字是9189,这个槽号是在192.168.25.128:7002上,因此key1被保存到了192.168.25.128:7002上。 
我们再接着保存key2,它的值是abc,如下所示,可以看到key2所对应的槽号是4998,显然是在192.168.25.128:7001上。 
最后,我们可以使用get命令取得key1、key2的值,如下图所示。 
Jedis的使用
连接单机版的Redis
如何在我们的项目中应用Redis呢?我们得使用Redis的java客户端,Redis的java客户端有很多,但官方推荐使用Jedis。下面我就来讲如何使用Jedis连接单机版的Redis。
首先需要把jedis依赖的jar包添加到工程中,推荐添加到服务层,即taotao-content-Service工程。因此我们需要把jedis的坐标添加到taotao-content-Service工程的pom.xml文件当中,jedis的坐标如下:
<!-- Redis客户端 -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>

下面在taotao-content-Service工程的src/test/java目录下新建一个com.taotao.jedis包,并在该包中编写一个JedisTest测试类,如下图所示。 
运行以上测试方法之前,确保单机版的Redis服务是启动的,否则就会报错。这时我们使用./redis-cli命令连接上单机版的Redis服务,然后使用keys *命令查看当前redis数据库这里面有多少个key,可以看到我们新添加进的键名为mytest的key,最后使用get命令取出该key的值。 
使用连接池连接单机版的Redis
上面的testJedisSingle测试方法由于每次都创建一个Jedis对象,这是不合理的,因为这样很耗资源,因此我们使用数据库连接池来处理,需要连接的时候从数据库连接池中去获取,用完连接记得关闭,这样连接池才能将资源回收,如下图所示。 
连接集群版
连接集群要使用到JedisCluster对象,我们在JedisTest测试类中再添加一个测试方法,如下图所示。 
运行以上测试方法,接着我们使用redis客户端随意连接一台设备进行测试,比如我们连接192.168.25.128:7006这台设备(这是个从节点,从属于192.168.25.128:7003),然后使用get命令取出键名为jedisCluster的key的值,如下图所示,发现正是我们所添加的“123456”。 
(转)淘淘商城系列——使用Jedis操作集群的更多相关文章
- Jedis cluster集群初始化源码剖析
Jedis cluster集群初始化源码剖析 环境 jar版本: spring-data-redis-1.8.4-RELEASE.jar.jedis-2.9.0.jar 测试环境: Redis 3.2 ...
- Dubbo 系列(07-4)集群容错 - 集群
BDubbo 系列(07-4)集群容错 - 集群 [toc] Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 相关文档推荐: Dubbo 集群容错 - 实战 D ...
- 使用Spring Data ElasticSearch+Jsoup操作集群数据存储
使用Spring Data ElasticSearch+Jsoup操作集群数据存储 1.使用Jsoup爬取京东商城的商品数据 1)获取商品名称.价格以及商品地址,并封装为一个Product对象,代码截 ...
- Dubbo 系列(07-5)集群容错 - Mock
Dubbo 系列(07-5)集群容错 - Mock [toc] Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 相关文档推荐: Dubbo 实战 - 服务降级 ...
- Dubbo 系列(07-3)集群容错 - 负载均衡
目录 Dubbo 系列(07-3)集群容错 - 负载均衡 Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 1.1 负载均衡算法 1.2 继承体系 2. 源码分析 ...
- Dubbo 系列(07-2)集群容错 - 服务路由
目录 Dubbo 系列(07-2)集群容错 - 服务路由 1. 背景介绍 1.1 继承体系 1.2 SPI 2. 源码分析 2.1 创建路由规则 2.2 RouteChain 2.3 条件路由 Dub ...
- Dubbo 系列(07-1)集群容错 - 服务字典
Dubbo 系列(07-1)集群容错 - 服务字典 [toc] Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 本篇文章,将开始分析 Dubbo 集群容错方面的 ...
- Elasticsearch使用系列-Docker搭建Elasticsearch集群
Elasticsearch使用系列-ES简介和环境搭建 Elasticsearch使用系列-ES增删查改基本操作+ik分词 Elasticsearch使用系列-基本查询和聚合查询+sql插件 Elas ...
- Java操作redis客户端Jedis连接集群(Cluster)
创建JedisCluster类连接redis集群. @Test public void testJedisCluster() throws Exception { //创建一连接,JedisClust ...
随机推荐
- mac 终端经常使用命令(三)
基本命令 1.列出文件 ls 參数 文件夹名 例: 看看驱动文件夹下有什么:ls /System/Library/Extensions 參数 -w 显示中文,-l 具体信息. -a 包含 ...
- Android Java包各种功能简述
开发Android应用程序基本上使用的都是Java语言. 那么要想灵活的应用这一系统,就应当熟悉当中的Android Java包的各种功能. 一般的JAVA应用中.假设需用引用基础类库,通常须要使用例 ...
- HDU 5411 CRB and puzzle (Dp + 矩阵高速幂)
CRB and Puzzle Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) T ...
- 【bzoj2464】中山市选[2009]小明的游戏
直接转换成最短路 #include<algorithm> #include<iostream> #include<cstdlib> #include<cstr ...
- java 和 Android Base64加密
Java8 Base64 Java 8 新特性 在Java 8中,Base64编码已经成为Java类库的标准. Java 8 内置了 Base64 编码的编码器和解码器. Base64工具类提供了一套 ...
- bzoj 1370 Gang团伙
题目大意: 在某城市里住着n个人,任何两个认识的人不是朋友就是敌人,满足 1. 我朋友的朋友是我的朋友 2. 我敌人的敌人是我的朋友 所有是朋友的人组成一个团伙 告诉你关于这n个人的m条信息,即某两个 ...
- Patrik 音乐会的等待 单调栈的迷茫回忆
STL 一定要学好 一定要学好,一定要学好!!! 题目链接:https://www.luogu.org/problemnew/show/P1823 我们需要单向查找:用单调栈: 思路:维护一个身高单调 ...
- 2-3 Vue实例中的数据,事件和方法
上节课模板是写在Vue的实例里面的,现在我们可以把它恢复出来.写在挂载点的内部,看起来会舒服一点.Vue的数据项,可以配置任意的数据名字. <!DOCTYPE html> <html ...
- 牛客OI周赛2-提高组
A.游戏 链接:https://www.nowcoder.com/acm/contest/210/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语 ...
- [Swift通天遁地]一、超级工具-(14)使用SweetAlert制作漂亮的自定义Alert窗口
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...