<正则吃饺子> :关于redis集群的测试demo
redis集群的测试demo,来自网络,具体不详。
1、下载地址,如下:http://download.csdn.net/detail/u012543819/9729291
2、项目是java项目,结构如下:

3、类代码,如下:
package com.demo.redis; import java.io.IOException;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Set; import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster; public class RedisConnector { private JedisCluster cluster;
private Set<HostAndPort> clusterNodes; RedisConnector() {
connectRedis();
} private void connectRedis() {
clusterNodes = new HashSet<HostAndPort>(); clusterNodes.add(new HostAndPort("123.123.123.123", 6661));
clusterNodes.add(new HostAndPort("123.123.123.123", 6662)); clusterNodes.add(new HostAndPort("123.123.123.123", 6663));
clusterNodes.add(new HostAndPort("123.123.123.123", 6664));
clusterNodes.add(new HostAndPort("123.123.123.123", 6665));
clusterNodes.add(new HostAndPort("123.123.123.123", 6666)); cluster = new JedisCluster(clusterNodes); } public void putData() {
// 1、测试多个
int max = 10;
for (int i = 0; i < max; i++) {
try {
if (cluster == null) {
cluster = new JedisCluster(clusterNodes);
} else {
String keyString = "key" + i;
cluster.set(keyString, String.valueOf(i));
System.out.println("put:" + keyString + " " + "value:" + i);
}
} catch (Exception e) {
e.printStackTrace();
}
} // 2、测试单个
// try {
// if (cluster == null) {
// cluster = new JedisCluster(clusterNodes);
// } else {
// String keyString = "name";
// String value = "nnnn";
// cluster.set(keyString, value);
// System.out.println("put:" + keyString + " " + "value:" + value);
// }
// } catch (Exception e) {
// e.printStackTrace();
// } } public ArrayList<String> getData() { ArrayList<String> dataList = new ArrayList<String>(); int max = 6;
for (int i = 0; i < max; i++) { try {
if (cluster == null) {
cluster = new JedisCluster(clusterNodes);
} else {
String keyString = "key" + i;
dataList.add(cluster.get(keyString));
}
} catch (Exception e) { e.printStackTrace();
} }
return dataList;
} public void putHyperLog() { // try {
// long revalue = cluster.pfadd("user","1");
// System.out.println(revalue);
// } catch (Exception e1) {
//
// e1.printStackTrace();
// } int max = 10000;
for (int i = 0; i < max; i++) { try {
if (cluster == null) {
cluster = new JedisCluster(clusterNodes);
} else {
String keyString = "key_" + i;
for (int j = 0; j < 10; j++) {
long revalue = cluster.pfadd(keyString, String.valueOf(i));
System.out.println(i + "th" + revalue);
} }
} catch (Exception e) { e.printStackTrace();
} } } public void getHyperLogCount() {
try { if (cluster == null) {
cluster = new JedisCluster(clusterNodes);
} else {
for (int i = 0; i < 10000; i++) {
long count = cluster.pfcount("key_" + i);
System.out.println("key_" + i + ": total " + count);
} }
} catch (Exception e) { e.printStackTrace();
} } public void close() throws IOException {
cluster.close();
}
}
测试main方法
package com.demo.redis;
import java.util.ArrayList;
public class redisAccessStartup {
public static void main(String[] args) {
RedisConnector redisConnector = new RedisConnector();
//测试放入数据
redisConnector.putData();
//测试取数据
// ArrayList<String> data = redisConnector.getData();
// for (int i = 0; i < data.size(); i++) {
// System.out.println("key" + i + " is:" + data.get(i));
// }
// redisConnector.putHyperLog();
// redisConnector.getHyperLogCount();
}
}
4、测试效果

<正则吃饺子> :关于redis集群的测试demo的更多相关文章
- Redis 集群缓存测试要点--关于 线上 token 失效 BUG 的总结
在测试账户系统过程中遇到了线上大面积用户登录态失效的严重问题,事后对于其原因及测试盲点做了一些总结记录以便以后查阅,总结分为以下7点,其中原理性的解释有些摘自网络. 1.账户系统token失效问题复盘 ...
- redis集群的测试
原文:http://blog.sina.com.cn/s/blog_53b45c4d0102wg10.html 1.测试存取值 客户端连接集群redis-cli需要带上 -c ,redis-cli - ...
- Docker镜像配置redis集群
redis版本:3.2.3 架构: 3节点redis集群,并为每个节点设置一个备用节点,共6个节点 1.安装redis镜像 docker load < docker.redis.tar.gz 2 ...
- redis集群与分片(2)-Redis Cluster集群的搭建与实践
Redis Cluster集群 一.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper等,但从redis 3.0之后版本支持redis-cluster集群,Re ...
- 带你自行搭建虚拟机和Redis集群环境,值得收藏!
前言: 我们看到分析 Redis 使用或原理的文章不少,但是完整搭建一套独立的 redis 集群环境的介绍,并不是很多或者说还不够详细. 那么,本文会手把手带着大家搭建一套 Redis 集群环境,Re ...
- <正则吃饺子> :关于redis集群的搭建、集群测试、搭建中遇到的问题总结
项目中使用了redis ,对于其基本的使用,相对简单些,根据项目中已经提供的工具就可以实现基本的功能,但是只是这样的话,对于redis还是太肤浅,甚至刚开始时候,集群.多节点.主从是什么,他们之间是什 ...
- <正则吃饺子> :关于redis配置文件参数详解
来源于网络博文,感谢作者的分享,转载只为学习,方便查找,原文地址:http://blog.csdn.net/ljl890705/article/details/51540427 Redis是一个应用非 ...
- Redis集群搭建&访问
集群搭建步骤 1.创建多个节点: 2.为每个节点指派槽,并将多个节点连接起来,组成一个集群: 3.当集群数据库的16384个槽都有节点在处理时,集群进入上线状态: 要求:搭建一个包含6个节点的Redi ...
- .NET使用Task动态创建多任务多线程并行程序计算Redis集群keys计算
Task是一个很好用的多任务处理类,并且通过Task可以对任务进行很好的控制. 下面将通过代码实现Redis集群在使用IServer.keys时通过多任务对多个服务器示例进行并行计算,并对返回key做 ...
随机推荐
- PowerBuilder -- 键盘对应的枚举值
KeyCode values for keyboard keys Type of key KeyCode values and descriptions Mouse buttons KeyLeftBu ...
- shader学习之一:Properties语义块支持的数据类型
_Int ("Int",Int)=2为:变量名("面板显示的名称",数据类型) 对于Int,Float,Range这些数字类型的属性,默认值为单独的数字.对于贴 ...
- ECMall验证码问题
一.确认问题: 输入下面这个地址:http://你的网址/index.php?app=captcha&876589486 打开后出现:mt_rand(): max(0) is smaller ...
- c++中的基本知识点
1 class和struct的区别和联系 在c++中,class和struct只有一点不同,它们是可以完全替代使用的.唯一的不同在于,class中的成员默认是private的,而struct中默认是p ...
- 【zabbix】微信告警消息模版
下面给出了一个zabbix微信告警消息的模版, 消息最后加上#号和短横线的设计有两个原因: 1,zabbix的微信告警消息总是被截断,比如最后一个告警时间,如果没有最后一行#号,在微信上看的时候时间不 ...
- Java互斥语义的实现
锁 对象头(Object Header) HotSpot 虚拟机的对象头包括两部分信息:Mark Word(标记字段)和 Klass Pointer(类型指针) Mark Word 用于存储对象自 ...
- 基于ajax和Form实现的注册
注册 urls.py from django.contrib import admin from django.urls import path, re_path from app01 import ...
- 跟我一起学Git (十) Patches【转】
本文转载自:http://cs-cjl.com/2014/05/05/learn_git_with_me_10 Git实现了以下三条用于交换patch的命令: git format-patch 用于创 ...
- Mac OS访问Windows共享文件夹
原文地址:http://blog.csdn.net/jinhill/article/details/7246922 最近开始研究Mac OS,遇到的第一个问题就是如何在Mac OS中访问Windows ...
- POJ题目算法分类总结博客地址
http://blog.csdn.net/sunbaigui/article/details/4421705 又从这个地址找了一些:http://blog.csdn.net/koudaidai/art ...