redis压测和造数据方式

一、redis 压测工具
1、压测命令

1、对3000字节的数据进行get set的操作

redis-benchmark -h 10.166.15.36 -p 7001 -t set,get -n 100000 -q -d 3000

2、100个并发连接,100000个请求,检测host为localhost 端口为6379的redis服务器性能

redis-benchmark -h 192.168.1.201 -p 6379 -c 100 -n 100000

3、测试存取大小为100字节的数据包的性能

redis-benchmark -h 192.168.1.201 -p 6379 -q -d 100

4、只测试某些操作的性能

redis-benchmark -t set,lpush -n 100000 -q

5、只测试某些数值存取的性能

redis-benchmark -n 100000 -q script load "redis.call('set','foo','bar')"

6、500M压测命令(400W个key,每个key为128字节,总数据量为500M)

redis-benchmark -h xxx -p xxx -a xxx -t set -c 100 -d 128 -n 5000000 -r 4000000

2、压测参数

-h,表示redis的地址

-p,表示redis的端口

-a,表示redis的密码

-t set,表示测试使用的命令为set

-c 100,表示使用100个并发进行测试

-d 128,表示每个key的大小为128字节(B)

-n 5000000,表示一共进行500W次请求

-r 4000000,表示压测过程中最多使用400W个key

3、-t 可选参数(数据类型比如get set)

(1) PING_INLINE

(2) PING_BULK

(3) SET:将字符串值value关联到key;

(4) GET:返回key所关联的字符串值,如果key存储的值不是字符串类型,返回一个错误;

(5) INCR:将key中存储的数字值增一。不能转换为数字则报错;

(6) LPUSH:将一个或多个值value插入到列表key的表头;

(7) RPUSH:将一个或多个值value插入到列表key的表尾;

(8) LPOP:移除并返回列表key的头元素;

(9) RPOP:移除并返回列表key的尾元素;

(10) SADD:将一个或多个member元素加入到集合set当中,已经存在于集合的member元素将被忽略;

(11) SPOP:移除并返回集合中的一个随机元素;

(12) LPUSH:将一个或多个value插入到列表key的表头;

(13) LRANGE_100:返回列表key中指定区间内的元素,前100条元素;

(14) LRANGE_300:返回列表key中指定区间内的元素,前300条元素;

(15) LRANGE_500:返回列表key中指定区间内的元素,前500条元素;

(16) LRANGE_600:返回列表key中指定区间内的元素,前600条元素;

(17) MSET:同时设置一个或多个key-value对,value为字符串

二、redis 迁移工具
1、安装 redis-shake

wget 'http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/120287/cn_zh/1608173646665/redis-shake-v2.0.3.tar.gz'

tar -xvzf redis-shake-v2.0.3.tar.gz -C /usr/local/

cd /usr/local

mv redis-shake-v2.0.3 redis-shake

cd redis-shake

mkdir /usr/local/redis-shake/log/

touch /usr/local/redis-shake/log/redis-shake.log

2、修改默认配置文件

vim /usr/local/redis-shake/redis-shake.conf

1)修改源端的用户名密码

source.address = 10.10.180.107:6379

source.password_raw = 123456

2)修改目标端的用户名密码

target.address = 10.10.180.30:3021

target.password_raw = 123456

默认的是单节点的迁移。

目的redis的类型,支持standalone,sentinel,cluster和proxy四种模式。

target.type = standalone

3、开始迁移

cd /usr/local/redis-shake/

./redis-shake.linux -type=sync -conf=redis-shake.conf

相关推荐
丁总学Java12 分钟前
MySQL高级-MVCC-原理分析(RR级别)
数据库·mysql·mvcc·rr级别·可重复读
“抚琴”的人12 分钟前
C#——Path类详情
开发语言·数据库·microsoft·c#
创作小达人13 分钟前
InnoDB中的表级锁、页级锁、行级锁详解
java·数据库·mysql
missterzy1 小时前
Spring Boot 创建定时任务
java·数据库·spring boot·定时任务
m0_748171581 小时前
数据库第一次作业
数据库
V+zmm101342 小时前
springcloud分布式架构网上商城 LW +PPT+源码+讲解
java·数据库·后端·vue·idea·springclud
苏生Susheng2 小时前
【Oracle】Oracle常用语句大全
java·数据库·sql·mysql·oracle·sql语句·数据库语法
叶孤程2 小时前
【Qt知识】window frame 对窗口坐标的影响
数据库·qt·microsoft
dot.Net安全矩阵2 小时前
.NET 漏洞分析 | 某ERP系统存在SQL注入
数据库·sql·安全·web安全·矩阵·.net
编程梦想家(大学生版)3 小时前
数据库数据插入实战:创建表与插入数据
数据库·电子商务平台数据库创建于与插入