应用性能智能巡检最佳实践

    概述

    应用性能检测基于 APM 异常根因分析检测器,选择要检测的 service 、 resource 、 project 、 env 信息,定期对应用性能进行智能巡检,通过应用程序服务指标异常来自动分析该服务的上下游信息,为该应用程序确认根因异常问题。

    前提条件

    在观测云上创建创建 API Key

    1、登录观测云控制台,选择「管理」 - 「API Key管理」。

    2、创建新 Key。

    3、复制并保存相应的 API Key,后续会用到。

    部署应用智能巡检脚本

    1、登录 Func 平台,进入脚本市场,安装观测云自建巡检 core 核心包脚本。

    2、安装观测云自建巡检(APM 性能)脚本。

    3、根据提示输入 API key ID ,API key 和 Guance Node,然后点击部署。

    Guance Node 默认为杭州节点,节点情况可以参考:https://func.guance.com/doc/ui-guide-development-module-guance-node/

    4、点击前往启动脚本跳转到开发页面。

    5、点击执行脚本。

    6、脚本执行成功后,登录观测云,在「监控器」 - 「智能巡检」可以看到 APM 性能巡检成功开启。

    巡检事件报告

    在本次智能应用性能巡检中,我们检测到 ruoyi-gateway 服务的 P99 响应时间出现异常,具体异常情况如下:

    • 检测对象:ruoyi-gateway
    • 异常描述:P99 响应时间呈现异常上升趋势
    • 异常时间范围:2024-10-14 20:25 至 2024-10-14 21:15

    根因分析

    通过对 ruoyi-gateway 服务的深入分析,我们发现异常的主要原因如下:

    • 服务响应时间增加:P99 响应时间从正常水平显著增加至 150ms,而正常情况下应为 90ms 以下。
    • 请求处理延迟:在特定时间点,ValidateCodeHandler.handle 处理请求的时间超过了正常范围。

    事件概览

    在巡检期间,我们记录了以下关键性能指标:

    • 平均响应时间:9.28ms
    • 最小响应时间:162μs
    • 最大响应时间:139.45ms
    • 异常时段:21:25 至 21:15

    异常详情

    异常详情显示,ruoyi-gateway 服务在特定时段内响应时间显著增加,具体数据如下:

    • 21:10:响应时间开始上升
    • 21:10 - 21:15:响应时间达到峰值

    异常影响

    异常影响分析表明,以下服务和资源受到此次异常的影响:

    • 服务名称:ruoyi-gateway
      • 资源:GET /code
    • 服务名称:ruoyi-nginx
      • 资源:GET /prod-api/code
    • 服务名称:ruoyi_web_demo
      • 资源:/prod-api/code

    异常链路采样

    通过对异常链路的采样,我们发现以下链路 ID 相关的请求处理存在问题:

    • 时间:2024-10-14 21:06:33
    • 服务:ruoyi-gateway
    • 资源:ValidateCodeHandler.handle
    • 链路ID:8895535103034920389

    告警通知

    在异常发生时会收到如下告警信息:

    点击“前往工作云空间查看”可以直接跳转到观测云事件查看器查看事件详情。

    在根因分析页面,点击跳转链接,可以直接跳转到相应异常链路。

    结论与建议

    综上所述,ruoyi-gateway 服务在指定时段内经历了显著的性能下降,主要表现在 P99 响应时间的增加。这可能是由于后端服务处理延迟、资源竞争或配置问题导致的。建议采取以下措施:

    • 优化后端服务:检查 ValidateCodeHandler.handle 的实现,优化代码逻辑,减少不必要的处理时间。
    • 资源监控:增加对关键资源的监控,及时发现并解决资源瓶颈问题。
    • 配置审查:审查相关服务的配置,确保服务设置合理,能够应对高流量情况。
    • 性能测试:在修改后进行性能测试,确保优化措施有效,且未引入新的性能问题。

    联系我们

    加入社区

    微信扫码
    加入官方交流群

    立即体验

    在线开通,按量计费,真正的云服务!

    免费开启

    支持私有云环境部署

    代码托管平台