Redis5 压力测试结果反馈报告
Redis 相信很多人都用过了,关于性能啥的,网上一堆报告,闲得蛋痛,又随便测测写写一些狗屁文章,来刷存在感了。
安装最新Redis5.0.10
下载页默认是redis6.0,5.0版本在下面“other versions”,因为redis6.0 架构上做了很大的调整,线上服务器是centos7.8并且是内网状态,在不联网的情况下根本无法部署6.0(简直就是恶梦),业务还是5.0版本,那么这里就测试5.0版本。
按着官方的操着方式成功安装redis5.0

测试前配置准备
先看看服务器配置,CPU型号是:Intel(R) Xeon(R) CPU E5-2678 v3 @ 2.50GHz

先试官方提供的压测工具,在redis目录下面,redis-benchmark

相关的指令如下图

为了使得数据更真实,分别准备了两台服务器,Redis 服务器:192.168.3.40 ,压测服务器是:192.168.3.138 ,本次测试是基于单机测试,非集群
开始SET,Get,Lpush 常规测试
Set 测试
./redis-benchmark -h 192.168.3.40 -p 6379 -t set -n 1000000
./redis-benchmark -h 192.168.3.40 -p 6379 -t set -c 100 -n 1000000
上面两句代码分别是进行 1000000 次 Set 请求,使用默认大小(3 个字节),第一行默认使用50并发,第二行指定100并发数。


可以看到,这台Redis服务器的性能上限就是9W/s 的处理速度,当然REDIS的速度更多的是受限于内存的速率和网络IO,而并非CPU的影响。
从上面的数据来看,并发客户端从50升到100个,并没有很显著的提高性能,但是并不是意味着多个客户端并不能有效的提高处理速度。

把客户端并发数调整为10的时候,可以明显看到处理的速度变慢了。
接下来将测试不同的客户端并发数下,CPU和网络的变化情况
./redis-benchmark -h 192.168.3.40 -p 6379 -t set -c 5 -n 100000000
./redis-benchmark -h 192.168.3.40 -p 6379 -t set -c 50 -n 100000000
./redis-benchmark -h 192.168.3.40 -p 6379 -t set -c 100 -n 100000000

三者的处理速度分别是:3.8W/S , 10W/S , 8.6W/S
CPU变化总截图
网络变化总截图,注意顺序依次为三者的网络变化



Get 测试
./redis-benchmark -h 192.168.3.40 -p 6379 -t get -c 5 -n 100000000
./redis-benchmark -h 192.168.3.40 -p 6379 -t get -c 50 -n 100000000
./redis-benchmark -h 192.168.3.40 -p 6379 -t get -c 100 -n 100000000

三者的处理速度分别是:4.1W/S ,9.9W/S , 8.5W/S
CPU变化截图

网络变化总截图,注意顺序依次为三者的网络变化

Lpust 测试
./redis-benchmark -h 192.168.3.40 -p 6379 -t lpush -c 5 -n 100000000
./redis-benchmark -h 192.168.3.40 -p 6379 -t lpush -c 50 -n 100000000
./redis-benchmark -h 192.168.3.40 -p 6379 -t lpush -c 100 -n 100000000

三者的处理速度分别是:3.8W/S ,9.9W/S , 8.7W/S
CPU变化截图

网络变化总截图,注意顺序依次为三者的网络变化

本来是想测试下,正常环境下,模拟普通接口的压测,算了一下,每个接口15KB,以这个速度内存16G是不够的, 配置了100G内存,只能支持2分钟,压测不动就这样吧,后面有机会再压测模拟正常接口大小的结果。
今天的就先水到这里,下篇文章见。
Redis5 压力测试结果反馈报告的更多相关文章
- JMeter:生成漂亮的接口/压力测试的HTML报告
JMeter生成HTML网页报告(非gui模式操作) 我们做性能测试的时候会经常使用一些性能测试工具,比如loardrunner和jmeter,我个人比较喜欢Jmeter这个工具,jmeter之前版本 ...
- Android APP压力测试-Monkey
压力测试-Monkey学习 Monkey测试特点 什么是Monkey test? 如其名,像猴子一样,虽然什么都不懂,但是可以乱点一通,可以理解为压力测试.在规定的时间或次数范围内做任何随机的操作,随 ...
- Android自动化压力测试图解教程——Monkey工具
[置顶] Android自动化压力测试图解教程--Monkey工具 标签: 测试androidprofiling工具测试工具文档 2012-04-01 10:16 38185人阅读 评论(10) 收藏 ...
- 一个基于.NET平台的自动化/压力测试系统设计简述
AutoTest系统设计概述 AutoTest是一个基于.NET平台实现的自动化/压力测试的系统,可独立运行于windows平台下,支持分布式部署,不需要其他配置或编译器的支持.(本质是一个基于协议的 ...
- Android压力测试快速入门教程(图解)——Monkey工具
文章目录: 一.Monkey简介 二.Monkey的基本用法 三.Monkey测试示例图解 四.Monkey命令参数介绍 五.Monkey log分析 一.Monkey简介 Monkey:Androi ...
- (转)使用JMeter进行Web压力测试
使用JMeter进行压力测试 说到压力测试,一般第一反应都是LoadRunner.这个软件也确实是自动化测试的一个事实标准.无奈这个软件太过庞大,以及不能在MacOS上使用.我由于项目的需要,需要对一 ...
- Android自动化压力测试图解教程——Monkey工具 (转)
有时候我们需要对一个软件进行压力测试,检查该软件的性能.如果是人工进行测试的话,效率会低很多,而且会比较枯燥.这时,Android中的一个命令行工具Monkey就可以为我们减轻很多重复而又繁琐的工作. ...
- Android 压力测试工具Monkey
原文地址http://www.syhm52.com/tools/17.html 一.Monkey定义探索软件测试工具有哪些,本文主要介绍Monkey工具.Monkey测试是Android平台自动化测试 ...
- android app 压力测试工具-monkey tool
一.什么是Monkey? Monkey测试是Android自动化测试的一种手段,Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常. Monkey是A ...
随机推荐
- PLSQL-解析XML
DECLARE v_xmlclob CLOB := '<?xml version="1.0" encoding="UTF-8"?> <head ...
- 吉他自学用Guitar Pro好不好?
很多人心中都有一个吉他梦,可苦于没有坚持下来.其实一个人自学吉他过程是非常枯燥的.经常手上被磨得都是茧,但是也不清楚自己弹的到底对不对. 如果不跟着老师练习,那很有可能就走了歪路或者是无法长期坚持.所 ...
- CSP2020 游记
Day -28 后天就初赛了,考了一套模拟题,自闭,心态爆炸,感觉退役不远了 Day -26(初赛) 香农是谁??? 手写随机nth_element与O(n)的哈希表??? 阅读程序T2时间复杂度分析 ...
- WPF有关控件和模板样式设计的微软官方文档
说明 如果你正在使用WPF开发应用程序,相信这篇博客会对你有用.希望你能认真的阅读 正文 此文主要以Button为例进行介绍此文档的组成部分. Button Parts Button控件没有任何命名的 ...
- Mybatis【2.1】-- 从读取流到创建SqlSession发生了什么?
目录 1.Resources.getResourceAsStream("mybatis.xml")到底做了什么? 2. new SqlSessionFactoryBuilder() ...
- [原理] Android Native内存泄漏检测原理解析
转载请注明出处:https://www.cnblogs.com/zzcperf/articles/11615655.html 上一篇文章列举了不同版本Android OS内存泄漏的检测操作(传送门), ...
- redis new
redis cluster 数据结构 geo,heperloglog 3个非核心dict:阻塞dict,非阻塞dict,watch dict 3个bio线程,生产者消费者模式,主线程生产者: 1.la ...
- sharding调试setAutoCommit
emmm应该是有manager的 因为指定了@Primary 不然容器启动的时候创建sessionFactory就因为多个DataSource异常了,后面会滚的时候manager为null也会有运行时 ...
- 路由器/交换机Console口登录密码丢失后如何恢复
Console口登录密码丢失后如何恢复 如果忘记了Console口登录密码,用户可以通过以下两种方式来设置新的Console口登录密码. 通过STelnet/Telnet登录路由器/交换机设置新的Co ...
- Android开发环境及Hello World程序
Android的开发需要以下四个工具: 1. JDK 2. Eclipse 3. Android SDK 4. ADT 具体功能: 1. JDK.JDK即Java Development Kit(Ja ...