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

相关推荐
Lin_Miao_09几秒前
基于 DataX + DataX-Web 生成报表数据
java·数据库
一位代码1 分钟前
mysql | 复制表结构和数据
数据库·mysql
IndulgeCui1 分钟前
记一次mysql迁移至OceanBase操作记录
数据库·mysql·oceanbase
悟能不能悟6 分钟前
mybatis sql where a=#{a},如果a为null,会返回什么
数据库·sql·mybatis
l1t10 分钟前
豆包解读论文:将具有分支和循环控制流的命令式程序转换为标准SQL1999的公共表表达式
开发语言·数据库·人工智能·python·sql·postgresql·duckdb
云边有个稻草人15 分钟前
【MySQL】第五节—一文详解 | 表的约束(上)
数据库·mysql·default·表的约束·zerofill·主键约束
马克学长19 分钟前
SSM校外实习管理平台6tu82(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·计算机毕设·ssm框架·实习管理信息化·校企协同实习
山峰哥19 分钟前
数据库性能优化实战:从工程架构到SQL调优的深度解析
大数据·数据库·oracle·性能优化·架构·深度优先
共享家952728 分钟前
从 Redis 到分布式架构
redis·分布式·架构
soft200152532 分钟前
MySQL Buffer Pool性能优化:LRU链表极致设计之道
数据库·mysql·链表