一、何为性能优化
在性能测试中存在两个概念:(1)响应时间 (2) TPS.
响应时间:即从用户操作开始到系统给用户正确的反馈所需要的时间。
一般来说:系统处理时间+网络传输时间+展现时间,对非网络应用则不包括网络传输时间。
相应时间是最能反应用户对性能直观的感受。
TPS(Transaction per Second):每秒处理的事物数,是系统吞吐量的指标,在搜索系统中也用QPS(Query per Second)来衡量。
TPS一般与响应时间反相关。
通常来说的性能问题就是:响应时间过长,系统吞吐量过低 。在web性能测试中也会将高并发下内存泄漏也归为性能为题。
在Android应用程序中犹豫系统ANR限制,所以对主线程的响应时间提出了更高的要求。Android ANR的具体要求是指 activity对事件的响应不超过5秒
broadcastReceiver中执行时间不超过10秒。
二、性能优化的方式
(1) 降低执行时间
这部分包括:a. 缓存(包括对象缓存、IO缓存、网络缓存), b. 数据存储类型优化, c. 算法优化, d. JNI, e. 逻辑优化, f. 需求优化
(2) 同步改异步,利用多线程提高TPS
(3) 提前或延迟操作,错开时间段提高TPS
对于数据库优化、布局优化、Java代码部分优化都可以归纳到上面的几种方式中。