目录

1、简介

2、参数

3、操作


1、简介

Redis 自带了一个叫 redis-benchmark 的工具来模拟 N 个客户端同时发出 M 个请求。(类似于 Apache ab 程序)。

Redis下载地址:

https://redis.io/download

2、参数

redis-benchmark工具存放在Redis的src目录下。

使用 redis-benchmark -h 命令来查看使用参数

redis-benchmark [-h <host>] [-p <port>] [-c <clients>] [-n <requests]> [-k <boolean>]

 -h <hostname> 指定服务器主机名 (默认 127.0.0.1)
 -p <port> 指定服务器端口 (默认 6379)
 -s <socket> 指定服务器 socket
 -a <password> Redis 认证密码
 -c <clients> 指定并发连接数 (默认 50)
 -n <requests> 指定请求数 (默认 100000)
 -d <size> 以字节的形式指定 SET/GET 值的数据大小 (默认 2)
 --dbnum <db> 选择指定的数据库号 (默认 0)
 -k <boolean> 1=keep alive 0=reconnect (默认 1)
 -r <keyspacelen> SET/GET/INCR 使用随机 key, SADD 使用随机值
 -P <numreq> 通过管道传输 <numreq> 请求 (no pipeline)
 -q 退出,仅显示 query/sec 值
 --csv 以 CSV 格式输出
 -l 生成循环,永久执行测试
 -t <tests> 仅运行以逗号分隔的测试命令列表
 -I Idle 模式,仅打开 N 个 idle 连接并等待

3、操作

以下命令在Linux环境下执行。

对127.0.0.1使用20个并行客户端,总共10万个请求

./redis-benchmark -h 127.0.0.1 -p 6379 -n 100000 -c 20 -q

使用直接命令来运行

./redis-benchmark -h 127.0.0.1 -p 6379 -n 100000 -q script load "redis.call('set','foo','bar')"

模拟100个客户端

./redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -r 100000 -n 100000 -q

压测阿里云上的Redis

./redis-benchmark -h r-xxxxxxxx.redis.rds.aliyuncs.com -p 6379 -a xxxxxxx#Hq#hCD1GO$y2G6 -n 50000000 -c 200 -q

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐