博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JMeter压力测试及并发量计算-2
阅读量:5361 次
发布时间:2019-06-15

本文共 1500 字,大约阅读时间需要 5 分钟。

一个每天1000万PV的网站需要什么样的性能去支撑呢?

继续上一篇,下面我们就来计算一下,前面我们已经搞到了一票数据,但是这些数据的意义还没有说。技术是为业务服务的,下面就来说说怎么让些数据变得有意义。

一、聚合报告

初识聚合报告是不是有些眼熟,是的你没看错,他跟Apache AB的结果是类似的,事实上LoadRunner也会有一票这样类似的数据。
下面分别说下各个数据的意义,其中标成红色的是需要特别关注的。

  
 1. #Samples:样本数,如果你看过上一篇,这个就是前面我们那个公式算出来的结果
(Loop Count(Loop Controler)*Number of Threads*Loop Count(group))
 
  2. Average:平均响应时间。
 3. Median:中位数,50%用户响应时间。
 4. %90 Line:90%用户响应时间。
 5. Min:最小响应时间。
6. Max:最大响应时间。

 

   
7. Error%:本次测试中出现错误的请求的数量/请求的总数
   
8. Throughput:吞吐量,表示每秒完成的请求数。
   
9. KB/Sec:每秒从服务器端接收到的数据量(只是接收)。
下面说说几个重点参数:
1.为什么说%90 Line重要呢?

举个栗子:姚明与郭敬明平均身高约1.84米能说明什么?如果这个例子不够形象再想想我大天朝的平均工资。所以平均不代表公平,因为总有那么一小撮人会极大的影响平均值,而大多数人是被平均的。

通过JMeter官网我们能发现对这个参数的定义( ):
90% Line (90 th Percentile) is the value below which 90% of the samples fall. The remaining samples too at least as long as the value. This is a standard statistical measure. See, for example: Percentile entry at Wikipedia.
 
貌似这段话说的不明不白,但他给我提示了一个重要的词Percentile,于是我们继续跟进,原来这是一个统计术语。维基上有详细说明,并有公式:
n=(100/P)*N+1/2
其中n=排序位;P=待排序值;N=总的排序值数量
 
这块说的有点绕,看维基上的例子会比较清晰( )。
说白了就是将一组数据从大到小排序,并计算相应的累计百分位,则某一百分位所对应数据的值就称为这一百分位的百分位数。
 
2.Error% 
这个不说了,大家都懂。
 
3.Throughput  
这又是个很重要的参数了,开头提到的PV计算就跟这个数有关了。
计算公式见下图,通过Throughput可以换算出PV,当然为了应付突发状况还要留出一定的Buffer。
所以现在回到开头的那个问题,理论上每秒231的事务数就可以(10000000*0.8)/(24*60*60*0.4),当然这只是理论上;-)
 
 

4.KB/Sec

这个不细说了,跟计算你的机房带宽有关的。

二、图形结果 

这里比较重要的参数是偏离量。
偏离量,理论上是越小系统稳定的。但多少是小呢?所以这种说法是不准确的,“朝菌不知晦朔,蟪蛄不知春秋”,在不同的场景下对标准的定义也是不同的。

因为对正态分布和置信区间这块我也不太懂,这里就不敢瞎说了。

三、结果树

请求的执行状态,这里略。

本文固定链接: 

转载于:https://www.cnblogs.com/xiaoshen666/p/10847804.html

你可能感兴趣的文章
Linux常用命令(五)
查看>>
Linux常用命令(四)
查看>>
Linux常用命令(六)
查看>>
Linux常用命令(六)
查看>>
Linux常用命令(八)
查看>>
Linux常用命令(七)
查看>>
Linux常用命令(九)
查看>>
Linux常用命令(十一)
查看>>
Linux常用命令(十)
查看>>
实验吧之这就是一个坑
查看>>
Linux常用命令(十二)
查看>>
Linux常用命令(十三)
查看>>
Linux常用命令(十五)
查看>>
Linux常用命令(十四)
查看>>
Linux常用命令(十七)
查看>>
Linux常用命令(十六)
查看>>
Linux常用命令(二十四)
查看>>
4种java定时器
查看>>
Vue.js 教程
查看>>
linux 设置网卡
查看>>