首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

首先,简单介绍一下,性能测试平台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慢日志监控服务

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OoGlxzind0-Bt0n7Zx896Yeg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券