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

相关推荐
我有医保我先冲15 分钟前
SQL复杂查询与性能优化全攻略
数据库·sql·性能优化
烧瓶里的西瓜皮24 分钟前
Go语言从零构建SQL数据库引擎(2)
数据库·sql·golang
SelectDB41 分钟前
拉卡拉 x Apache Doris:统一金融场景 OLAP 引擎,查询提速 15 倍,资源直降 52%
大数据·数据库·数据分析
爱的叹息43 分钟前
华为高斯(GaussDB) 集中式数据库 的开发技术手册,涵盖核心功能、开发流程、优化技巧及常见问题解决方案
数据库·gaussdb
背太阳的牧羊人1 小时前
使用 PyMuPDF(fitz)库打开 PDF 文件,并且是从内存中的字节流(BytesIO)读取 PDF 内容
数据库·pdf·文件处理·pymupdf·fitz
@淡 定2 小时前
MySQL MVCC 机制解析
数据库·mysql
Chandler242 小时前
Redis:内存淘汰原则,缓存击穿,缓存穿透,缓存雪崩
数据库·redis·缓存
SRC_BLUE_173 小时前
Python GUI 编程 | QObject 控件基类详解 — 定时器
开发语言·数据库·python
DBWYX3 小时前
MySQL 进阶 面经级
数据库·mysql
喝醉酒的小白3 小时前
SQL Server:触发器
数据库