精准定位Java应用CPU负载过高问题

简介: 通过Arthas的watch指令监控DispatcherServlet的getHandler方法,快速定位Spring MVC中处理请求的Controller;结合反编译功能,直接查看目标类代码,提升问题排查效率。

1.前言
尝试一:定位哪个Controller执行了代码
前言

trace指令能追踪调用链路,而Springmvc应用都是借助于:javax.servlet.Servlet * 执行的
watch指令能够实时监测指定方法的:返回值,抛出异常,入参,同时支持OGNL操作
实践
为了节省时间,这里直接给出实施方案,采用watch指令,命令如下[监听内容是依靠trace的内容决定的,但是SpringMvc应用都是一样的,所以可以复用]:
watch org.springframework.web.servlet.DispatcherServlet getHandler returnObj
发起调用会看到打印信息,就能迅速定位到对应的代码
image.png

尝试二:反编译查看代码
image.png

目录
相关文章
|
2天前
|
敏捷开发 Dubbo Java
微服务技术栈
本文介绍敏捷开发中需求人日评估方法,涵盖开发、自测、联调、测试及发布各阶段周期估算,并提供常见功能如增删改查、导入导出、远程调用等参考人日,助力团队科学排期。
40 15
|
2天前
|
Java 测试技术 Linux
微服务技术栈
本文介绍大型团队中生产环境发布管理的全流程,涵盖从开发到生产的多环境部署策略(dev→test→pre→prod),结合自动化CI/CD平台实现分支管理、一键发布与回滚。通过Jenkins+K8S+Docker实现构建部署自动化,各环境隔离运行;日志排查依托Skywalking或ELK实现链路追踪,提升故障定位效率,保障发布稳定性与系统可靠性。
40 7
|
2天前
|
NoSQL Linux Shell
2-MongoDB单机部署
本文介绍MongoDB在Windows和Linux系统中的安装启动方法,包括下载、解压、配置数据目录及启动方式(命令行或配置文件)。支持32/64位系统,推荐使用稳定版。可通过mongo shell连接,也可使用图形化工具Compass。Linux下需注意权限与防火墙设置,并可采用标准方式安全关闭服务。
16 0
|
2天前
|
Java Maven 数据安全/隐私保护
Nexus仓库
本文介绍Nexus Repository Manager OSS在Linux环境下的安装与配置,包括JDK8安装、Nexus部署、仓库管理、用户权限设置及密码重置方法。支持通过Docker快速部署,并实现数据持久化。同时涵盖Maven、NPM、Docker等组件的私服搭建与资源上传下载配置,助力企业构建高效私有仓库体系。(239字)
25 0
|
2天前
|
存储 NoSQL 关系型数据库
MongoDB相关概念
MongoDB是一款高性能、无模式的文档型NoSQL数据库,适用于高并发、海量数据、高扩展性场景。适用于社交、游戏、物联网、物流、视频直播等应用,擅长处理数据量大、读写频繁、事务要求不高的业务。支持BSON格式,灵活存储复杂数据,提供丰富查询、索引、分片和副本集功能,实现高效读写与水平扩展,相比MySQL可大幅降低开发运维成本。
13 0
|
2天前
|
运维 Ubuntu Linux
Docker常用命令
本文介绍了Docker常用命令,涵盖服务管理(启停、重启、开机自启)、系统信息查看、镜像操作(搜索、下载、删除、空间占用)、虚悬镜像处理及命令自动补全配置方法,还包含后台运行容器与yum依赖下载技巧,适用于日常开发运维。
7 0
|
2天前
|
网络协议 关系型数据库 MySQL
nexus搭建docker私仓 使用nexus创建docker私有仓库
本文介绍如何使用Nexus搭建Docker私有仓库,包括Nexus中启用Docker仓库、创建Blob存储、配置docker-hosted仓库及端口设置,并说明防火墙开放与Docker客户端配置insecure-registry的方法,实现镜像的推送与拉取。
17 0
|
2天前
|
安全 Linux Shell
Docker镜像
镜像是包含软件运行所需代码、依赖库、配置等的轻量级可执行包。Docker利用联合文件系统实现分层结构,通过bootfs和rootfs构成镜像底层,支持镜像共享与复用。容器启动时在镜像顶层添加可写容器层,所有修改仅作用于该层,保障镜像安全与高效。
21 0
|
2天前
脱敏工具
提供身份证、姓名、手机号脱敏方法:身份证保留前后部分,中间替换为*;姓名仅显示首尾字符,中间隐去;手机号保留前3后4位,中间4位隐藏,保护用户隐私。
5 0
|
2天前
|
关系型数据库 MySQL Linux
Docker下载加速
通过配置网易数帆、阿里云镜像加速器或Docker代理,可显著提升Docker镜像下载速度。推荐使用阿里云加速器,配置简单,支持官方镜像标签;也可结合代理实现更高效拉取。
11 0