首页 > 其他分享 >007 性能指标

007 性能指标

时间:2023-03-16 17:56:39浏览次数:42  
标签:007 接口 查询 并发 TPS QPS 线程 性能指标

计算最大线程数

  查询功能,需要系统能够在5分钟内能完成5000笔查询业务,同时用户响应时间不超过3s,该用多少线程数施压?

  公式:最大线程数=(单次响应时间 * 业务量)/总的业务时间

  (3*5000)/5*60=50

相对并发&绝对并发

  相对并发:指在一个时间段内发生的事情。
    在jmeter的测试计划中添加线程组,设置线程属性,2s之内启动10个线程,其对应的相对并发为5(线程数/启动时间)

  绝对并发:指在同一个时刻发生的事情。
    jmeter可以使用同步定时器实现绝对并发,也就是同一时刻达到了某一集合点才发出请求
  
  绝对并发的优点:对服务器来说,会产生一种瞬间高并发。

  绝对并发的缺点:对服务器来说,平均压力会减低。

  根据业务来选择,如果业务场景是瞬间高并发类型的,比如抢购,秒杀等,需要加集合点。或者是多场景测试,你需要确保数据流上下游关系,控流的时候可以考虑。其他场景都不需要加,加了集合点后,就不适用tps来衡量系统性能。

吞吐量

  性能测试领域的吞吐量通常会结合上时间维度进行统计。
  如果吞吐量的“量”以“事务”为统计单位的话,结合时间维度,就可以换算成TPS

TPS&QPS

  TPS 每秒事务数(Transactions per second)具体的事务的定义,都是人为的,可以一个接口、多个接口、一个业务流程等。
  如果每秒能够完成N次这3个过程,TPS就是N;如果多个接口定义为一个事务,那么这多个请求完成一次,算做一个TPS.

  QPS 每秒查询数(Queries per second)是一台服务器每秒能够响应的查询次数(数据库中的每秒执行查询sql的次数)。
  QPS代表的场景不够全面,仅仅适用于只执行单次查询的接口,不建议用QPS来作为系统性能指标。

  TPS&QPS的关系
  如果是对一个查询接口(单场景)压测,且这个接口内部不会再去请求其他接口,那么tps=qps,否则tps≠qps.
  如果是容量场景,假设n个接口都是查询接口,且这个接口内部不会再去请求其他接口,qps=n*tps.

  如何评估TPS
    根据已有接口评估:
      如果是一个老接口--上一次大促峰值的3-5倍为目标TPS
      如果是一个新接口--可以参考相同业务场景的其他接口目标制定
    根据业务量评估
      案例:预期20万注册用户,其中每天客跃用户峰值预计占10%,首页存在游客访问则增加一倍;法跃用户平均每人每天访问接口4次;访问时间段大多数在20:00-21:00
      通过二八原则,80%的业务在20%的时间产生
      峰值TPS=业务量*80%/业务时段(秒)*20%
      200000*10%*2*4*80% /60*60*20%=178

标签:007,接口,查询,并发,TPS,QPS,线程,性能指标
From: https://www.cnblogs.com/huizijiang/p/17223649.html

相关文章