性能文章> #学习心得#APM第一讲应用性能监控理论基础>

 #学习心得#APM第一讲应用性能监控理论基础原创

2年前
395428

应用性能监控是什么

 

应用

ios,app,pc

 

性能

performance用户体验,

注重  快:流畅,稳:崩溃,省:资源占用省

 

监控那些性能

一,快:

1.启动监控:冷启动,热启动
2..卡顿监控:主线程消息执行耗时,

3.页面监控:监控页面打开耗时,页面打开NLS帧率

4.网络监控:网络响应

二,稳:

1.Java崩溃

2.Native崩溃

3.ANR监控

4.OOM监控

三,省:

1.内存监控:

java内存,虚拟内存,显存

2.CPU监控:

APP使用率和各个线程使用率

3.电量监控:

温度监控,异常定位,CPU异常监控

4.磁盘监控:

 

如何进行监控

 

监控核心是围绕用户体验建立指标和进行异常归因。 问题监控,采集,上报,聚合,前端展示 问题分配,分析,修复,指标验证 总结:应用性能监控是为了优化用户体验,从用户体验的角度进行性能优化

为什么要做性能监控

 

崩溃,卡,耗电严重,手机发烫,占用磁盘过大,网络怎么失败,

 

性能监控有哪些收益

 

**确保应用的可用性,提升用户体验,获得业务收益**

**业务指标**:DAU,次日存留,直播的开播率,电商的GMV等

 

如何进行优化

 确认优化指标优先级

 

两个因素:影响用户比例和用户感知程度 占位:14:58优先级图片 

 

应用性能监控和优化流程

 

1.理论分析 从底层原理出发更加全局的视角来思考优化目标和策略

 现状分析 使用线上监控工具,确认线上指标现状,根据归因数据,确认优化方向

性能优化 根据排查出的问题和方向,针对性的性能优化

线上验证

**确认指标**,技术指标或者业务指标 ### 防劣化 优化之后如何保持效果,需要持续的对迭代版本进行有效监控。可通过自动化测试,大对象问题,尽早发现解决问题 优化第一步建立线上指标监控,最好可以准确的进行归因定位。 

 

使用APM排查Crash分享

在参加APM举办的性能分析专场,学会了一些排查Crash的思路和该工具的使用,接下来我来分享下一个案例,来带大家熟悉这个平台。

OOM

众所周知,OOM是内存分配失败导致的,申请的内存不够我们使用的时候就会报这个异常,在APM平台上Crash 日志为:

 

可以看到剩余的空间满足不了分配的空间,Total Space-FreeSpace=Used Space这是内存计算公式

Native崩溃

在场景中,我试着创建线程但是好像陷入到了死循环当中(代码错误,忘记使用线程池)。

再线程中我又去访问一个本地文件,这导致了我的FD过多,一个进程打开的FD数量是有限的,一般在一千个左右。所以去APM平台上差了下日志,发现确实如此:

 

 

点赞收藏
北洋
请先登录,查看2条精彩评论吧
快去登录吧,你将获得
  • 浏览更多精彩评论
  • 和开发者讨论交流,共同进步
8
2