美文网首页性能测试测试
性能瓶颈分析案例

性能瓶颈分析案例

作者: Root_123 | 来源:发表于2018-07-22 20:33 被阅读2次

性能分析案例一

  在性能测试过程中,瓶颈犹如功能测试的bug,瓶颈的分析犹如bug的定位。性能测试工程师好比医生,看到病象,定位病因。性能瓶颈的定位更像庖丁解牛,层层解剖,最后定位问题之所在。下面分享一个内存泄漏的瓶颈分析。

        病象:TPS波动非常大;狂打超时日志;偶尔有500错误。

        看到这个现象,其实说明不了什么问题,就象人咳嗽,不一定是感冒,可能是上火,嗓子发炎。但是看到这个现象至少说明系统是有性能问题存在,我们就要进一步进行分析,看看问题到底在哪?用jconsole监控内存,发现内存使用如图1

图1:内存使用情况图

        从图1中,我们可以很清晰的看到内存使用不正常,FGC非常频繁,差不多5分钟进行一次,而且内存回收不彻底,每次回收在1G左右徘徊。到这里我们已经可以定位是内存问题,导致了我们看到的TPS波动大,FGC频繁,超时严重等等一系列现象。

        那么是谁吃了我的内存???

      用简单的jstat命令查看系统GC情况,看到情况如图2所示

图2

      在图2的绿色框标注,我们可以很清晰的看到进行一次FGC,内存只回收12%左右,回收很不彻底,而且FGC的时间持续5秒。内存回收不彻底,肯定是有些方法霸占了内存不释放,导致系统频繁FGC来进行回收。

      那么谁是真正的凶手呢??

    用jmap 命令对内存使用进行分析,发现情况如图3所示

图3

      通过FGC前后的内存使用进行比对,发现这三个方法快速占用内存从最少到最多,而且回收不掉,始终霸占着前几位。再通过其他工具分析,看看这三个是不是真正的凶手。

用MAT分析工具进行分析,图4所示

图4

      这三个方法各占了内存使用的14%,那么问题就很清晰明朗了。这三个方法就是真正的凶手,调优就从这三个方法入手。

      性能瓶颈的分析,犹如庖丁解牛,层层剖析。最终定位问题之所在。

性能分析案例二

LR结果分析案例二

相关文章

  • 10分钟后性能测试瓶颈调优!想进大厂这个必须会

    目录 引言:性能瓶颈调优 性能调优步骤 性能瓶颈概率分布 系统资源 CPU top 参数详解 性能分析思路 案例分...

  • 性能瓶颈分析案例

    性能分析案例一 在性能测试过程中,瓶颈犹如功能测试的bug,瓶颈的分析犹如bug的定位。性能测试工程师好比医生,...

  • linux 下查看性能状态命令

    解决问题: 性能优化,首先分析是由于哪些瓶颈造成的性能低下, 如 cpu 瓶颈,内存瓶颈,io瓶颈, 或者程序本身...

  • 分析并优化你的python代码

    Profiling and optimizing your Python code 性能分析 只要找到性能瓶颈,采...

  • optimize

    linux性能分析及调优__cpu 性能瓶颈调优可调性能参数 、内存性能瓶颈可调性能参数(操作系统设置swap的目...

  • 2016ArchSummit-https 性能优化

    该分享主要两部分:1.分析https的性能瓶颈点 2.根据瓶颈点的优化方案 性能分析 https比起http的缺点...

  • 性能瓶颈分析套路

    性能指标 性能工具 根据指标到工具 根据工具查指标 分析思路 top查看系统整体情况 用 iostat 发现磁盘 ...

  • 性能测试分析以及调优

    前言:※性能测试的目的就是评估当前系统的指标,分析定位解决性能瓶颈,预防规避性能风险※通过某些手段让系统性能得到提...

  • iOS性能优化技巧

    通过静态 Analyze 工具,以及运行时 Profile 工具分析性能瓶颈,并进行性能优化。结合本人在开发中遇到...

  • 性能测试从零开始实施指南——性能监控

    性能测试过程中,监控分析和调优是最核心也是占比最大的一部分。 性能分析的目的是找出系统性能存在的瓶颈与风险,性能调...

网友评论

    本文标题:性能瓶颈分析案例

    本文链接:https://www.haomeiwen.com/subject/cnjrmftx.html