Part 1 App性能概览与平台化实践

Part 1 App性能概览与平台化实践

写在前面的话

主要用于记录慕课网中的Top团队大牛带你玩转Android性能分析与优化课程的笔记,便于以后查看,课程很精彩。自己一边学习一边整理笔记,会慢慢更新的。

一 性能优化中可能遇到哪些难题

1.性能表现差
2.线上问题无从追查
3.性能优化的长期开销大
4.总结

1.性能表现差

app启动慢、卡顿、丢帧、耗电、网络请求慢(用户可以感知到的)

内存占用高、抖动频繁(用户感知不到的)

崩溃率、异常率高等

2.线上问题无从追查

难点:

1.如何保证异常感知灵敏度(发现bug)

2.如何复原“案发”现场(复现bug)

3.如何快速“止血”成功(修复bug)

3.性能优化的长期开销大

难点:

1.如何扼杀问题于萌芽中(前期准备做足)

2.优化效果如何长期保存

4.总结

目标:

1.性能表现好

2.线上问题易追查

3.长期投入小

二 App性能优化解决方案的演进

1.项目初期(三无状态,不考虑性能问题)

只关注崩溃率、不采集性能数据

没有性能检测、优化方案

没有排查问题手段

2.项目壮大期(初步拥有问题定位分析能力但是不完善)

指标采集,不够全及深入

接入成熟的APM(Android Performance Management安卓性能管理),排查手段单一

线下的检测、优化,方案不成型

3.项目成熟期(有完善的性能指标,完善手段及可移植性)

重点关注性能问题,数据丰富,手段多样化

线上、线下有一整套完善解决方案(重点)

自建APM,新产品可快速接入

4.线上线下

误区:对线上不重视

侧重点:线下预防,线上监控

方案不同:线下可以用黑科技

5.为什么要自建APM?

成熟的APM通用,但不满足个性化需求

外部APM与内部系统难打通(如获取用户的行为数据),带来时间成本

数据必须掌握在自己手中

三 业界优秀的平台化实践

1.Crash收集平台

Bugly为代表:

数据采集、上报成功率高,包含java、Native崩溃,可在项目初期直接接入

2.APM平台

听云为代表

通用的性能解决方案,数据采集完善,方便接入,但不满足个性化需求,数据隐患,建议性能方案不完善的阶段接入

3.自建解决方案

美团、携程、360等

贴合自身业务特点,满足定制化需求,数据安全

你可能感兴趣的:(Part 1 App性能概览与平台化实践)