一、为什么需要性能测试?

性能测试 可以让我们了解 Redis 服务器的性能优劣。在实际的业务场景中,性能测试是必不可少的。在业务系统上线之前,我们都需要清楚地了解 Redis 服务器的性能,从而避免发生某些意外情况,比如数据量过大会导致服务器宕机等。
为了解 Redis 在不同配置环境下的性能表现,Redis 提供了一种性能测试工具 redis-benchmark(也称压力测试工具),它通过同时执行多组命令实现对 Redis 的性能测试。

二、语法格式

redis-benchmark [option] [option value]

option :可选参数。

option value :具体的参数值。

redis-benchmark 命令的可选参数如下所示:

序号 选项 描述 默认值
1 -h 指定服务器主机名 127.0.0.1
2 -p 指定服务器端口 6379
3 -s 指定服务器socket 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 通过管道传输 请求 1
10 -q 强制退出 redis。仅显示 query/sec 值
11 –csv 以 CSV 格式输出
12 -l(L 的小写字母 生成循环,永久执行测试
13 -t 仅运行以逗号分隔的测试命令列表
14 -I(i 的大写字母 Idle 模式,仅打开 N 个 idle 连接并等待
  • 注意:
  1. 该命令是在 redis 的目录下执行的,而不是 redis 客户端的内部指令。

  2. redis-benchmark 的测试结果和硬件关联比较大,尤其是 CPU 主频的频率。

三、执行性能测试

执行命令:

redis-benchmark -h localhost -p 6379 -c 100 -n 100000
含义:测试100个并发连接 100000请求。

执行结果:

执行输出的结果是各种命令的性能分析。
image

我们来解析一下,这些输出是什么意思:
image-1663657125045

小结

以上就是 对【Redis】中的【性能测试工具 redis-benchmark】 的讲解,大家在平时开发时,可以使用这个命令进行性能测试,防止项目上线后因某些意外情况而出现我们的【项目不可用】等情况。

Q.E.D.


爱调味品的大哥