性能分析初探

Posted linxiu-0925

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了性能分析初探相关的知识,希望对你有一定的参考价值。

而对于测试场景,对于不同 App,选取的场景肯定有所不同,不过可以统一的是,性能测试场景一定是 App 业务的主流程或者核心功能场景。

比如支付宝的转账、缴费,微信的聊天、拍照发朋友圈、更新朋友圈。

性能分析初探:

内存占用过大时应该查看是否有内存泄露、是否有对象使用了不合理的数据结构:

(1)内存泄露可以借助 MAT、Leakcanary 等工具来分析定位;

(2)不合理的数据结构需要针对内存占用排名靠前的类型进行分析,需要研究 Java 不同集合类的使用场景和实现原理的区别;

 启动时间太慢,需要查看是不是做了过多的无关紧要的事情、创建了太多的网络请求和线程,是不是加载页面图片的时机不正确,有没有使用延时加载的策略。

响应时间慢,可以考虑使用的 http 请求封装库、数据解析库效率是否够高,是否有效率更高的选择,是否采用了数据缓存策略,请求数据是否有压缩,也可以通过 Systrace 和 Traceview 来排查问题究竟出在哪个函数的哪段代码。

流量消耗太大,需要查看网络请求数据是否采用 Gzip 压缩,图片格式是否采用 webP 方案,网络请求是否存在重复冗余请求的情况,是否可以增加网络缓存的机制,请求数据是否都有效。针对流量消耗问题排查,可以借助抓包工具抓包,分析相关的通信报文来定位问题。

 

以上是关于性能分析初探的主要内容,如果未能解决你的问题,请参考以下文章

物联网硬件安全分析基础-硬件分析初探

mutex实现与性能初探

PowerBI分析功能初探

用R进行文本分析初探——以《红楼梦》为例

数据流分析初探

Lucene初探之索引过程分析