QPS/接口容量如何评估学习

转自:https://cloud.tencent.com/developer/article/1784548

1.介绍

一般我们的接口操作包括两方面:1计算(主要消耗cpu),2等待IO(对于我们的应用来说就是请求缓存 请求其他协议、请求数据库等)。我们的服务一般也分为CPU密集型(一般是后台脚本类型应用)和IO密集型。 


2.QPS预估

https://cloud.tencent.com/developer/article/1752215

QPS主要靠的是两点:第一运营数据,包括PV、DAU和最高在线人数等;第二则是在非集中式访问的接口当中使用八二原则,即80%的人会在20%的时间进行接口访问。通过上面两个原则和数据,就可以推算出接口预估的QPS值。

比如,一个非集中式访问的接口预测有100万的PV,其整个访问周期是3周。根据八二原则就可以得到以下的计算:(100万人*80%)/(3周时间*20%)= 3 QPS .

再比如,如果一个集中式访问的接口(如抢购接口)预测最高有15万用户同时在线,集中在1分钟里面进行访问。这时候,因为使用的是同时在线用户,这里不再适用八二原则,而是直接进行相除的计算。可以有下面的推算:15万人 / 1分钟 = 2500 QPS

QPS = 并发线程数 * ( 1000 / 平均耗时ms )
  • 平均耗时:平均每个请求的耗时。即所有线程所有请求的总耗时➗总请求数。平均耗时反映的是接口处理请求的时间,往往跟被测服务器的繁忙程度和资源有关。
  • 95分位耗时:相对于平均耗时,95分位耗时更多地被用于反映接口性能的方面。因为95分位耗时能够去除一些最大值毛刺对整体数据的影响。更加能够反馈出接口真实的体验。

 

posted @ 2023-01-15 23:06  lypbendlf  阅读(1023)  评论(0编辑  收藏  举报