Jediscluster_唧唧pc客户端

Jediscluster_唧唧pc客户端前言:由于spring-data-redis不支持,redis集群的操作。所以更换客户端,使用Jediscluster。正文:一.序言   前面搭建了个3个msater-slave的本地集群测试,这里用java的客户端进行一些简单测试,看看集群是否生效。   redisclient推荐:http://redis.io/clients 

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

前言:

由于spring-data-redis不支持,redis集群的操作。所以更换客户端,使用Jedis cluster。

正文:

一.序言

     前面搭建了个3个msater-slave 的本地集群测试,这里用java 的客户端 进行一些简单测试,看看集群是否生效。

     redis client 推荐:http://redis.io/clients

     我使用的:https://github.com/xetorthio/jedis

 

二.测试

    maven:

    

Java代码  
收藏代码

  1. <dependency>  
  2.     <groupId>redis.clients</groupId>  
  3.     <artifactId>jedis</artifactId>  
  4.     <version>2.7.2</version>  
  5.     <type>jar</type>  
  6.     <scope>compile</scope>  
  7. </dependency>  

 

     

Java代码  
收藏代码

  1. @org.junit.Test  
  2. public  void cluster(){  
  3.     String key = “2”;  
  4.     // 这东西 可以直接看到key 的分片数,就能知道放哪个 节点  
  5.     System.out.println(JedisClusterCRC16.getSlot(key));  
  6.     Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();  
  7.     jedisClusterNodes.add(new HostAndPort(“127.0.0.1”7000));  
  8.     jedisClusterNodes.add(new HostAndPort(“127.0.0.1”7001));  
  9.     jedisClusterNodes.add(new HostAndPort(“127.0.0.1”7002));  
  10.     // 3个master 节点  
  11.     JedisCluster jc = new JedisCluster(jedisClusterNodes);  
  12.     System.out.println(jc.get(key));  
  13.     jc.setnx(key, “bar”);  
  14.     String value = jc.get(key);  
  15.     System.out.println(value);  
  16. }  

   别人的例子,我测试:

   

Java代码  
收藏代码

  1. Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();  
  2.      jedisClusterNodes.add(new HostAndPort(“127.0.0.1”7000));  
  3.      jedisClusterNodes.add(new HostAndPort(“127.0.0.1”7001));  
  4.      jedisClusterNodes.add(new HostAndPort(“127.0.0.1”7002));  
  5.      JedisCluster jc = new JedisCluster(jedisClusterNodes);  
  6.      for (int i = 1; i <= 10000; i++) {  
  7.          long start = System.currentTimeMillis();  
  8.          jc.set(“k:” + i, “v” + i);  
  9.          System.out.print(“set “ + i +“th value in “ + (System.currentTimeMillis() – start) + ” ms”);  
  10.          start = System.currentTimeMillis();  
  11.          jc.get(“k:” + i);  
  12.          System.out.println(“, get “ + i +“th value in “ + (System.currentTimeMillis() – start) + ” ms”);  
  13.      }  

   由于是本机 固态硬盘,速度 杠杆的。

    

 

 三.测试反馈: 

     1.集群正常,基本操作都OK

     2.如果某个master 挂了,比如7001, 集群依然可用,会存放到对应的salve 7004 上去。

     3.如果master -slave 都挂了,会导致 整个集群不可用,异常,因此最好配有M-S 的结构

     4.我默认配置,有rdb 和 aof  持久化,因此master 挂了,重启,数据可以从salve 上恢复

     5.存放的key 会根据返回的位置,放在不同的slot 上,实现均衡

 

小结:

      1.这里仅仅是最基本的配置,和简单测试

      2.如果配置文件以及更多命令得参考文档

         2.1 客户端命令:http://redis.io/topics/clients

         2.2 中文jredis API:http://www.360doc.com/content/15/0328/12/5054188_458684113.shtml  建议看源码用例

        2.3 redis.conf 中文(旧):http://www.cppblog.com/HappySky2046/archive/2014/06/18/207323.html

      

      3.如果前期负载不很大,可以开启持久化,毕竟集群 还不熟悉,如果负载高了,而且集群比较熟悉了,业务也不依赖的情况下,可以关闭,或者 适当调整,调整多看看 原理 和 配置文件说明 就行了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182024.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker下载安装教程_mac docker 性能

    docker下载安装教程_mac docker 性能前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

    2022年7月28日
    31
  • 国家的崛起,无法建立局域网连接[通俗易懂]

    国家的崛起,无法建立局域网连接[通俗易懂]w8,w10需要启动directplay,具体步骤:控制面板,选择程序和功能,启用或关闭windows功能,旧版组件。然后勾选上directx组件就行了。

    2022年9月23日
    3
  • Java服务器接收上传的文件

    Java服务器接收上传的文件有时候我们服务器需要接收来自用户上传过来的文件,这时候就需要服务器端有相应的服务能够接收这个文件下面写一个简单的服务器端代码,需要的朋友可以参考一下注释很全就不多啰嗦了packagecom.SM_test.saomiao.constroller;importjava.io.File;importjava.io.FileOutputStream;importjav

    2022年5月29日
    34
  • vim命令大全(最全)

    此文为转载学习链接:vim命令大全http://blog.csdn.net/scaleqiao/article/details/45153379vim命令小技巧http://www.codeceo.com/article/useful-vim-command.html1.关于Vimvim是我最喜欢的编辑器,也是linux下第二强大的编辑器。虽然emacs是公认的世界第一,我认为使…

    2022年4月10日
    51
  • linux aaa认证服务器,华为设备安全之AAA认证

    linux aaa认证服务器,华为设备安全之AAA认证AAA系统的简称:认证(Authentication):验证用户的身份与可使用的网络服务;授权:依据认证结果开放网络服务给用户;AAA—–身份验证(Authentication)、授权(Authorization)和统计(Accounting)Cisco开发的一个提供网络安全的系统。参见authentication。authorization和accounting实验目的:实现dhcp动…

    2022年5月2日
    113
  • 布线问题(分支限界法)

    布线问题(分支限界法)一、首先说一下分支限界法的思想:(1)比较:分支限界法和回朔法有相似之处,但是回朔法是搜索问题的所有解,采用深度优先搜索;而分支限界法是搜索问题的最优解,采用的是广度优先搜索;(2)核心思想:分支

    2022年7月2日
    26

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号