系统性能指标

都在谈论高并发,但是高并发系统的指标有哪些呢?

  • QPS,TPS可以表明系统的吞吐;
  • TP90可以表明系统的响应时间;

吞吐量重要参数:QPS(TPS),并发数,响应时间

  • QPS(TPS):每秒request/事务 数量
  • 并发数:系统同时处理的request/事务数量
  • 响应时间:一般取平均响应时间

QPS(TPS)= 并发数 / 平均响应时间

并发数 = QPS * 平均响应时间

TP50 TP90 TP99

  • TP50:一段时间内(比如取5分钟),统计某方法每次调用所消耗的时间,并将这些时间按照从小到大进行排序,取第50%的值作为TP50值,就是满足百分之50的网络请求所需要的最低消耗。

比如:

有四次请求耗时分别为:2ms,10ms,100ms,1000ms

private static int tp(List<Integer> times, int percent) {
    float percentF = (float)percent/100;
    int index = (int)(percentF * times.size() - 1);
    Collections.sort(times);
    return times.get(index);
}

0.99 * 3 = 2.97 取整为3 第三个值为100ms

之后我们可以设置这个指标作为监控阈值,保证方法调用消耗时间少于这个值,如果超过此值,则报警。

TP90,TP99,TP999计算方法相同,代表了不同的性能要求,TP50相对较低,TP90则较高,TP99则要求很高

猜你喜欢

转载自my.oschina.net/u/1000241/blog/1787600