如何使用P-One的全链路压测工具来定位问题节点和分析性能问题

作者:压测工具   发布时间:2023-07-06

首先,简单介绍一下,性能测试平台P-One。

 

PerformanceOne(简称:P-One)是泽众软件自主研发的一套一站式性能测试平台软件产品。

 

该产品采用 B/S 架构开发,实现了集管理、设计、压测、监控以及分析于一体的全方位性能测试解决方案。可有效提升性能测试技术能力,提高效率,降低门槛,减少性能测试的投入,同时提升软件产品质量。适用于各种非功能测试场景,如压力测试、负载测试、稳定性测试、可靠性测试、容量测试等。

 

 

P-One性能测试平台

 

 

P-One平台主界面

 

官方网站:http://www.spasvo.com/Products/pone.asp

 

随着应用系统节点越来越多,越来越复杂,当出现任何一个节点的故障、异常,都会出现严重的性能问题。同时,当一个节点发生问题,给问题定位带来了很大的困难:我们往往只知道出现了性能问题,如tps达不到要求,大量交易失败,但是我们不知道问题在哪个节点上,也不知道出问题的节点,问题的原因是什么。

 

从本质上来看,我们需要解决两个问题:第一,定位问题节点;第二,找到问题原因。

 

关于第一个问题,定位问题节点,我们推荐采用的方法就是全链路的时间片分析法。那么,什么是时间片分析法?

 

 

全链路的时间片分析法

 

如上图,当出现某个交易异常,我们很难发现问题缩在。

 

使用POne的全链路分析,可以很容易的解决这个问题:

 

1、使用全链路,来找到出现异常的交易链路,如上图颜色标识;

 

2、全链路分析工具,可以展示,在这个链路上,各个节点消耗的时间片:

 

 

节点消耗统计

 

3、根据异常的时间片,可以定位问题节点。

 

从上面的表格数据,我们可以看到,

 

1)nginx服务,总共消耗了20毫秒(ms),在这个交易中,这个节点出发的链路,消耗了10s的时长,一般情况下就是异常交易;

 

2)微服务1,本身消耗了30ms,这个节点发起的链路,消耗了9970ms,也就是20ms被nginx消耗了,还有10ms被网络消耗(假设是网络消耗了10ms);

 

3)微服务2,本身消耗了30ms,看起来也是正常的,它和它的下面链路,总共消耗9930ms;

 

4)Database server,总共消耗的时长数是9890,将近10秒了!!!

 

5)我们可以基本上认为,问题节点就是数据库服务。

 

POne的全链路分析图:

 

 

链路分析(一)

 

 

链路分析(二)

 

 

节点详细查看

 

 

链路展示与统计(一)

 

 

链路展示与统计(二)

 

 

链路展示与统计(三)

 

4、查看可能问题节点的计数器,来定位问题:

 


nginx监控服务



Redis监控服务



JVM进程监控服务


 

MYSQL慢日志监控服务


本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-60725088-8054),我们将立即处理,马上删除。



沪ICP备07036474号-4 |

沪公网安备 31010702003220号

2015-2023 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.