redis-benchmark对redis进行性能测试
大家好,今天我们来分享一下使用redis-benchmark对redis进行性能测试
进入redis 的默认安装目录:
[root@localhost ~]# cd /usr/local/bin/
指的就是这个压力测试工具,这是官方自带的
它的命令格式:
redis-benchmark [option] [option value]
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(L 的小写字母) 生成循环,永久执行测试
13 -t 仅运行以逗号分隔的测试命令列表。
14 -I(i 的大写字母) Idle 模式。仅打开 N 个 idle 连接并等待。
这就是它们参数的含义:
也许这样截图会比上面的清晰
启动Redis
[root@localhost bin]# redis-server redistest/redis.conf
12062:C 16 Mar 2022 17:26:25.446 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
12062:C 16 Mar 2022 17:26:25.446 # Redis version=5.0.8, bits=64, commit=00000000, modified=0, pid=12062, just started
12062:C 16 Mar 2022 17:26:25.446 # Configuration loaded
[root@localhost bin]#
连接Redis
[root@localhost bin]# redis-cli -p 6379
127.0.0.1:6379>
测试正常
在Redis运行的同时,复制一个别的终端
执行 redis-benchmark 测试
[root@localhost bin]# redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 10000
这条命令的意思:
使用 redis-benchmark 来对本机(127.0.0.1 或 localhost)指定端口6379 100个并发连接,且每个并发连接10000个请求
它效于:
[root@localhost bin]# redis-benchmark -h localhost -p 6379 -c 100 -n 10000
[root@localhost bin]# cd /usr/local/bin/
[root@localhost bin]# redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 10000
====== PING_INLINE ======10000 requests completed in 0.13 seconds100 parallel clients3 bytes payloadkeep alive: 191.02% <= 1 milliseconds
97.46% <= 2 milliseconds
99.89% <= 3 milliseconds
100.00% <= 3 milliseconds
78125.00 requests per second====== PING_BULK ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 194.39% <= 1 milliseconds
98.84% <= 2 milliseconds
99.98% <= 3 milliseconds
100.00% <= 3 milliseconds
81967.21 requests per second====== SET ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 193.37% <= 1 milliseconds
98.10% <= 2 milliseconds
99.92% <= 3 milliseconds
100.00% <= 3 milliseconds
82644.62 requests per second====== GET ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 195.25% <= 1 milliseconds
98.89% <= 2 milliseconds
100.00% <= 2 milliseconds
81967.21 requests per second====== INCR ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 195.46% <= 1 milliseconds
98.14% <= 2 milliseconds
99.84% <= 3 milliseconds
100.00% <= 3 milliseconds
81967.21 requests per second====== LPUSH ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 193.63% <= 1 milliseconds
98.94% <= 2 milliseconds
100.00% <= 2 milliseconds
82644.62 requests per second====== RPUSH ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 193.41% <= 1 milliseconds
98.06% <= 2 milliseconds
99.92% <= 3 milliseconds
100.00% <= 3 milliseconds
83333.34 requests per second====== LPOP ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 196.53% <= 1 milliseconds
99.21% <= 2 milliseconds
100.00% <= 2 milliseconds
82644.62 requests per second====== RPOP ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 196.63% <= 1 milliseconds
99.53% <= 2 milliseconds
100.00% <= 2 milliseconds
84745.77 requests per second====== SADD ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 197.04% <= 1 milliseconds
99.78% <= 2 milliseconds
100.00% <= 2 milliseconds
84745.77 requests per second====== HSET ======10000 requests completed in 0.13 seconds100 parallel clients3 bytes payloadkeep alive: 189.62% <= 1 milliseconds
97.57% <= 2 milliseconds
99.39% <= 3 milliseconds
100.00% <= 3 milliseconds
76923.08 requests per second====== SPOP ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 195.91% <= 1 milliseconds
98.38% <= 2 milliseconds
99.75% <= 3 milliseconds
100.00% <= 3 milliseconds
80645.16 requests per second====== LPUSH (needed to benchmark LRANGE) ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 193.91% <= 1 milliseconds
99.48% <= 2 milliseconds
100.00% <= 2 milliseconds
83333.34 requests per second====== LRANGE_100 (first 100 elements) ======10000 requests completed in 0.18 seconds100 parallel clients3 bytes payloadkeep alive: 176.23% <= 1 milliseconds
97.62% <= 2 milliseconds
99.30% <= 3 milliseconds
100.00% <= 3 milliseconds
55865.92 requests per second====== LRANGE_300 (first 300 elements) ======10000 requests completed in 0.39 seconds100 parallel clients3 bytes payloadkeep alive: 10.41% <= 1 milliseconds
72.39% <= 2 milliseconds
96.66% <= 3 milliseconds
98.69% <= 4 milliseconds
98.92% <= 5 milliseconds
99.01% <= 41 milliseconds
99.05% <= 42 milliseconds
99.36% <= 43 milliseconds
99.58% <= 44 milliseconds
99.80% <= 45 milliseconds
100.00% <= 45 milliseconds
25445.29 requests per second====== LRANGE_500 (first 450 elements) ======10000 requests completed in 0.45 seconds100 parallel clients3 bytes payloadkeep alive: 10.07% <= 1 milliseconds
17.88% <= 2 milliseconds
90.47% <= 3 milliseconds
98.37% <= 4 milliseconds
99.82% <= 5 milliseconds
100.00% <= 5 milliseconds
22222.22 requests per second====== LRANGE_600 (first 600 elements) ======10000 requests completed in 0.57 seconds100 parallel clients3 bytes payloadkeep alive: 10.01% <= 1 milliseconds
1.49% <= 2 milliseconds
55.81% <= 3 milliseconds
95.05% <= 4 milliseconds
98.49% <= 5 milliseconds
98.98% <= 6 milliseconds
99.15% <= 7 milliseconds
99.32% <= 8 milliseconds
99.50% <= 9 milliseconds
99.63% <= 10 milliseconds
99.75% <= 11 milliseconds
99.88% <= 12 milliseconds
100.00% <= 13 milliseconds
17482.52 requests per second====== MSET (10 keys) ======10000 requests completed in 0.12 seconds100 parallel clients3 bytes payloadkeep alive: 195.92% <= 1 milliseconds
99.67% <= 2 milliseconds
100.00% <= 2 milliseconds
85470.09 requests per second
查看这个信息
四个箭头,从上到下的意思
1.是10000个请求进行测试,10000个请求用时0.57秒2. 模拟了100个客户端(100台计算机)3. 每次写入3个字节4. 一台服务器来测试请求(就是我们本机)
看下面:
这是处理的时间
每秒处理78125次请求
所以Redis相较于MySQL那样的关系型数据库来讲,很大的优势就在于Redis对高并发的处理能力
好了,有关于redis-benchmark对redis进行性能测试的实例,就到这里了,谢谢大家
redis-benchmark对redis进行性能测试相关推荐
- Redis学习之Redis概述与安装以及性能测试
Redis入门 概述 Redis是什么 Redis(remote dictionary server)远程字典服务器 是一个开源的使用c语言编写.支持网络.可基于内存亦可持久化的日志型.key-val ...
- Redis学习(二)----性能测试
文章目录 Redis学习(二)----性能测试 Redis学习(二)----性能测试 redis-benchmark 是 redis 官方自带的性能测试软件,通过指定参数进行测试 redis的默认选项 ...
- Redis学习笔记~Redis在windows环境下的安装
Redis是一个key-value的存储系统,它最大的特点就是可以将数据序列化到文件中. redis存储在服务器的内存或者文件中,它不是session,不是cookies,它只是个更安全,更稳定,更可 ...
- redis演练(5) redis持久化
何谓持久化,就是媳妇让你,持久一些. 说白了持久化:就是将内存中的数据保存到磁盘上的过程(数据库也算磁盘的特殊表现),以保证宕机或断电后,可以继续访问.java中常见的持久化框架,如Hibernate ...
- Redis:02---安装Redis(Linux+Windows+Docker)
Linux安装: 一.安装方式1(下载源码编译安装) 第一步:从下面的网址中下载Redis最新稳定版本的源代码 sudo wget http://download.redis.io/redis-sta ...
- linux redis 高级命令,Redis高级用法
Redis认识误区 用get/set方式使用Redis 作为一个key value存在,很多开发者自然的使用set/get方式来使用Redis 实际上这并不是最优化的使用方法.尤其在未启用VM情况下, ...
- 超详细Redis入门教程——Redis命令(上)
前言 本文小新为大家带来 超详细Redis入门教程--Redis命令(上) 相关知识,具体内容包括Redis 基本命令,Key 操作命令,String 型 Value 操作命令,Hash 型 Valu ...
- redis | 二、redis安装
redis系列文章: https://liudongdong.top/categories/redis 本篇来源: https://liudongdong.top/archives/rediser-r ...
- Redis学习 - NoSQL简介、redis安装、redis基础知识、数据类型、持久化、订阅发布、主从复制、哨兵模式、缓存击穿和雪崩
学习视频地址:https://www.bilibili.com/video/BV1S54y1R7SB 完结撒花,感谢狂神 文章目录 1. NoSQL 1.1 单机Mysql的演进 1.2 当今企业架构 ...
- Redis - 1、redis概述和安装
1.安装redis 1.1.下载redis https://download.redis.io/releases/ 1.2.将 redis 安装包拷贝到 /opt/ 目录 1.3.解压 tar -zv ...
最新文章
- 独家 | 深度学习基础——激活函数以及什么时候使用它们?(附代码)
- python设置环境路径_window10配置python虚拟环境的路径
- 解析XML的4种方式及优缺点比较
- 线程入门-使用Thread类
- php 查看spl,PHP使用标准库spl实现的观察者模式示例
- 基于 CNN 的中文对话情感分析
- 高可用Kubernetes集群原理介绍
- 解决Visual Studio 2022 python 中文乱码问题
- Handler native层实现原理
- 解决:error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools“
- R语言编程 R语言作业
- 环境配置 python 3.6+Anaconda+cuda9.0+cudNN7.0+Tensorflow
- 为什么我的电脑只能上qq不能打开网页
- 【论文翻译】Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks
- 国内3G市场发展情况
- 皮卡智能联手全球最大贸易服务商PingPong,共推AIGC应用落地服务
- mysql 中外码和主码_数据库原理与应用(6)——关系的候选码、主码和外码、关系完整性、关系代数、元组关系的演算、域关系演算...
- 【云原生之Docker实战】使用Docker部署Alist网盘直链程序
- c语言十进制转八进制递归,C语言之利用递归将十进制转换为二进制
- AVPlayer v1.4 - 超强媒体播放器 中文版
热门文章
- vue+mintui+picker弹框选择器
- vue中关于el-radio样式修改失效的问题(自定义属性),和实现类似淘宝的码数、款式的选泽按钮
- 聚信立蜜罐数据深度解析(反欺诈)
- [转载]MIDAS/Gen常见问题汇编(一) 转自百思论坛
- 这是写给自己的一些话
- 自制手机app的51蓝牙+WiFi+循迹+避障OLED显示速度小车
- 计算机u盘 硬盘无法读取,U盘、移动硬盘盘符不显示及无法识别解决方法
- 投影仪幕布增益_你还对投影仪幕布不了解吧?这些干货让你明白
- 30岁的测试工程师,青春饭还能吃吗?
- java中子类会继承父类的构造方法吗