本文目前仅对内使用,请勿直接提供给客户!!!!
1. 概述
1.1 应用场景
运维平台提供「系统健康观测」、「模板性能」、「首屏链路」、「调用链路」等功能,帮助用户定位性能问题。
但是用户往往无法进一步根据这些功能进一步定位存在的性能问题。本文通过一个简单的示例,讲解如何逐步排查定位具体性能问题。
1.2 性能问题排查思路
span字典:https://kms.fineres.com/pages/viewpage.action?pageId=776737729
2. 示例
背景:销售组总监反馈,9月24号下午查看「销售目标管理」目录时,总是加载很慢。
1 | 判断是系统问题还是模板问题 | 操作步骤: 1)管理员登录运维平台,选择对应项目。点击「项目监控>健康观测」 2)查看综合健康指数。 判断逻辑: 综合健康指数在95%以上,说明只是对应模板存在问题,并不是整个系统都性能差 |
2 | 查看模板性能 | 操作步骤: 1)点击「健康巡检>模板性能」。 筛选出「销售目标管理」目录对应的模板「market/sales_objectives_list.cpt」 2)点击「模板详情」。发现运维平台已经帮助分析出了很多性能风险 执行操作: 先记录下相关问题,待查看完链路后一并反馈给模板开发者 |
3 | 分析首屏链路 | 操作步骤: 1)经过确认,销售总监是在9月24号下午访问这个目录的 2)点击对应时间后的「首屏链路」按钮跳转 3)发现首屏链路耗时较长的是「请求响应」步骤 判断逻辑: 网络环境很好,这个工程也没有配置负载均衡转发 那么大概率是服务器处理请求慢,需要进一步查看调用链路 |
4 | 分析调用链路 | 操作步骤: 1)点击「查看调用链路」按钮,跳转到调用链路界面 2)查看耗时最高的链路,点击「分析汇总」,找到耗时最高的span,点击span 3)跳转到span列表中,点击这个span名称,查看端点 4)端点名称包含「JDBI」,说明是取数过程导致的性能问题 5)记录下有问题的慢SQL,一并反馈给模板开发者 |