想要测试redis的性能,就需要用到一个redis官方自带的性能测试工具------redis-benchmark
这个为一个压力测试工具
如果使用的呢?
redis-benchmark [option] [option value]可以使用哪些命令呢?
redis 性能测试工具可选参数如下所示:
序号选项描述默认值1-h指定服务器主机名127.0.0.12-p指定服务器端口63793-s指定服务器 socket4-c指定并发连接数505-n指定请求数100006-d以字节的形式指定 SET/GET 值的数据大小27-k1=keep alive 0=reconnect18-rSET/GET/INCR 使用随机 key, SADD 使用随机值9-P通过管道传输 请求110-q强制退出 redis。仅显示 query/sec 值11–csv以 CSV 格式输出12-l生成循环,永久执行测试13-t仅运行以逗号分隔的测试命令列表。14-IIdle 模式。仅打开 N 个 idle 连接并等待。我们来测试下:
##测试100个并发连接 ##一个并发连接有100000个请求 redis-benchmark -h localhost -p 6379 -c 100 -n 100000测试前,一定要启动redis服务啊,
接下分析一下,输入测试命令后,都输出了什么样的信息,我截取片段信息来分析
====== PING_INLINE ====== ##这句话的意思是一个并发的请求为100000,完成这些请求只用了1.86秒 100000 requests completed in 1.86 seconds ##这句话的意思是有100个并发的客户端 100 parallel clients ##这句话的意思为每次发送3个字节 3 bytes payload ##这句话的意思保持的连接数为1 ##只有一台服务器来处理这些连接 keep alive: 1 host configuration "save": 900 1 300 10 60 10000 host configuration "appendonly": no multi-thread: no 0.00% <= 0.7 milliseconds 0.03% <= 0.8 milliseconds 4.46% <= 0.9 milliseconds 14.21% <= 1.0 milliseconds 24.69% <= 1.1 milliseconds 35.29% <= 1.2 milliseconds 45.85% <= 1.3 milliseconds 56.33% <= 1.4 milliseconds 66.80% <= 1.5 milliseconds 77.18% <= 1.6 milliseconds 87.46% <= 1.7 milliseconds 95.70% <= 1.8 milliseconds 98.17% <= 1.9 milliseconds 98.93% <= 2 milliseconds 99.86% <= 3 milliseconds 99.90% <= 7 milliseconds 99.90% <= 8 milliseconds 99.99% <= 9 milliseconds ###在9毫秒内把所有请求处理完成 100.00% <= 9 milliseconds ##每秒处理53821.31个请求 53821.31 requests per second ====== PING_BULK ====== 100000 requests completed in 2.24 seconds 100 parallel clients 3 bytes payload keep alive: 1 host configuration "save": 900 1 300 10 60 10000 host configuration "appendonly": no multi-thread: no 11.35% <= 1 milliseconds 80.16% <= 2 milliseconds 97.96% <= 3 milliseconds 99.47% <= 4 milliseconds 99.56% <= 5 milliseconds 99.64% <= 6 milliseconds 99.70% <= 7 milliseconds 99.80% <= 8 milliseconds 99.81% <= 9 milliseconds 99.89% <= 10 milliseconds 99.98% <= 11 milliseconds 100.00% <= 11 milliseconds 44543.43 requests per second