性能指标、二八定律

  二八定律:又名80/20定律、帕累托法则(巴莱特定律)、朱伦法则、关键少数法则、不重要多数法则、最省力的法则、不平衡法则等。

  做性能测试之前,要先确定本次预期性能指标。

对于老项目:

可以通过业务监控系统、查看日志等方法计算某个接口的每秒调用量TPS。

  • 业务监控系统(一般以分钟级别作监控)

可以在系统里查看过去一周(或者一个月)内,接口调用量最高的那一天,然后再找到当天接口调用量最高的时间点(分钟级别)。比如说在12:10调用量为10000,将其换算为每秒调用量:10000/60=166,因此可以确定这个接口TPS只要达到166即可满足。

  • 日志(创业型公司)

通过中间件的日志,每个中间件都有访问日志。比如Nginx的access.log,该日志中详细记录了每个HTTP请求的访问时间、URL、响应状态码、响应时间等。

可以通过一些脚本(自己编写或者找运维帮忙),统计出每个接口在哪个时间段调用最高,调用量峰值是多少。根据峰值数据,最终可以计算出每秒的调用量,然后可以将这个指标定为接口的预期TPS。


对于新项目:

新项目未上线,在上线前希望先进行一轮压测,评估项目性能是否能支撑当前的用户,这时性能预期指标更为重要。

使用二八定律来评估性能指标。

  • 首先预估系统的每日总请求数(如果没有任何历史数据参考,一般是通过用户量或者其他关联系统来评估)

比如某网站新增了一个每日签到送积分功能,由于还未上线,所以没有签到的数据。网站的注册用户1000w,日活跃用户大概是100w左右,那么最极端情况下,这100w人都会来签到,那么每天大概有100w次签到请求,80%的请求数:100w*80%=80w。

  • 其次确定系统的20%时间

大多数系统是24小时对外提供服务的(也有一些系统,比如政府类的项目,是在一天的某个时间段提供服务的)。但是大多数系统在0点-6点之间访问量很少,从一天的总访问量来看,可以忽略不计。所以统计时间的时候,可以把这段时间去掉,一天24小时去掉这6小时,还剩下18个小时,那20%的时间=18小时*3600秒*0.2=12960秒。

最终计算结果为:80w/12960s=61左右,也就是说接口TPS满足61即可。

但是活动推出后,每日也可能出现超过100w的用户来签到。签到业务每个用户只能执行一次,如果是其他业务,可能会有多次操作。所以评估出来指标后,为了更加保险一些,最好再乘以一个冗余系数,提高期望指标,防止人为评估造成预期指标偏低的情况。

冗余系数一般定为2-5之间(个人经验),所以最终TPS=61*3=183。同时,将来项目上线后,可以通过对项目接口的峰值监控,来对比之前评估的算法结果,调整冗余系数,最终随着不断的数据积累,将会形成一套本项目的性能模型。

转载自:https://blog.csdn.net/Testfan_zhou/article/details/104628805

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值