实现端到端的应用性能管理
听云 / 杨金全
2016-4-23
议题
• 应用性能管理
• 实现App端性能管理
• 实现Server端性能管理
• 实现端到端的性能管理
应用性能管理
应用全景
性能挑战
应用性能管理
APM
Application Performance Management
对软件应用的性能和可用性进行监控和管理,
致力于发现和定位性能瓶颈和故障,
以保证应用达到预期的服务水平(SLA)
实现App端性能管理
App性能衡量指标
• 交互性能
• HTTP性能
• 崩溃率
• ANR
Agent自动嵌码技术
iOS
Hook/Swizzle
Android
Dalvik/Class rewriting
崩溃
崩溃
ANR(Application Not Responding)
ANR(Application Not Responding)
交互性能 - 慢动作
交互性能 - 慢交互
网络性能
Server端性能衡量指标
• 应用响应时间
• 业务性能,吞吐率,成功率
• 服务性能(SQL,NoSQL,API,外部服务…)
• 代码效率(追踪,剖析)
• 代码质量(错误,异常)
Agent自动嵌码技术
Java
Bytecode/Instrumentation/Classloader
PHP
Opcode/Zend/Extensions/Xhprof
.Net, Python,Ruby,Nodejs……
慢SQL追踪
rows条数过多
定位代码问题
性能追踪摘要里展示本次访问过程中各代码模
块的耗时占比,其中可见
()方
法的调用耗时秒,占比超过24%
定位代码问题
从追踪详情可查看详细的代码调用堆栈,通过堆栈分析,可
获取调用这条非常慢Memcached的INCR操作的用户代码在
文件第114行的excute方法中。
端到端
应用拓扑
跨应用分析
跨应用分析