天天看点

redis必杀高级:性能测试

题记:

Redis 性能测试是通过同时执行多个命令实现的。

语法:redis 性能测试的基本命令如下:

redis-benchmark [option] [option value]           

例如:

同时执行10000个命令

127.0.0.1:6379> redis -benchmark -n 10000
PING_INLINE: 141043.72 requests per second
PING_BULK: 142857.14 requests per second
SET: 141442.72 requests per second
GET: 145348.83 requests per second
INCR: 137362.64 requests per second
LPUSH: 145348.83 requests per second
LPOP: 146198.83 requests per second
SADD: 146198.83 requests per second
SPOP: 149253.73 requests per second
LPUSH (needed to benchmark LRANGE): 148588.42 requests per second
LRANGE_100 (first 100 elements): 58411.21 requests per second
LRANGE_300 (first 300 elements): 21195.42 requests per second
LRANGE_500 (first 450 elements): 14539.11 requests per second
LRANGE_600 (first 600 elements): 10504.20 requests per second
MSET (10 keys): 93283.58 requests per second           

redis 性能测试工具可选参数

序号  选项  描述  默认值
1   -h  指定服务器主机名    127.0.0.1
2   -p  指定服务器端口 6379
3   -s  指定服务器 socket    
4   -c  指定并发连接数 50
5   -n  指定请求数   10000
6   -d  以字节的形式指定 SET/GET 值的数据大小 2
7   -k  1=keep alive 0=reconnect    1
8   -r  SET/GET/INCR 使用随机 key, SADD 使用随机值   
9   -P  通过管道传输 <numreq> 请求  1
10  -q  强制退出 redis。仅显示 query/sec 值  
11  --csv   以 CSV 格式输出  
12  -l  生成循环,永久执行测试 
13  -t  仅运行以逗号分隔的测试命令列表。    
14  -I  Idle 模式。仅打开 N 个 idle 连接并等待。           

以下实例我们使用了多个参数来测试 redis 性能:

redis-benchmark -h 127.0.0.1 -p 6379 -t set,lpush -n 100000 -q
SET: 146198.83 requests per second
LPUSH: 145560.41 requests per second           

主机为 127.0.0.1,端口号为 6379,执行的命令为 set,lpush,请求数为 10000,通过 -q 参数让结果只显示每秒执行的请求数。

继续阅读