Redis 性能测试是通过同时执行多个命令实现的。
语法
redis 性能测试的基本命令如下:
redis-benchmark [option] [option value]
注意:该命令是在 redis 的目录下执行的,而不是 redis 客户端的内部指令。
实例
以下实例同时执行 10000 个请求来检测性能:
$ redis-benchmark -n 10000 -q
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 10000 -q
SET: 146198.83 requests per second
LPUSH: 145560.41 requests per second
以上实例中主机为 127.0.0.1,端口号为 6379,执行的命令为 set,lpush,请求数为 10000,通过 -q 参数让结果只显示每秒执行的请求数。
以上就是Redis 执行性能测试的详细内容,更多关于redis 性能测试的资料请关注脚本之家其它相关文章!
您可能感兴趣的文章:- Redis分析慢查询操作的实例教程
- 浅析JavaWeb项目架构之Redis分布式日志队列
- java获取redis日志信息与动态监控信息的方法
- 如何高效使用Redis作为LRU缓存
- Linux安装Redis实现过程及报错解决方案
- spring boot+redis 监听过期Key的操作方法
- Redis面试必会的题目
- 在Docker中使用Redis的步骤详解
- SpringBoot2.3整合redis缓存自定义序列化的实现
- Redis缓存常用4种策略原理详解
- Redis缓存穿透出现原因及解决方案
- 详解Redis的慢查询日志