使用arthas诊断高CPU实例1

使用arthas诊断高CPU实例1

背景

​ 有个客户,项目上报他们家的测试环境很卡,于是介入处理。

环境

​ weblogic + Windows部署老产品

步骤

​ 首先,连续点击老产品,CPU确实飚满,当访问页面返回后,CPU使用释放,恢复正常。

​ 其次,由于CPU瞬间飚高,选择arthas来处理,attach进程:

##启动
java -jar arthas-boot.jar

##选择需要attash的java进程pid,Windows环境通常有如下几种方式
1、一种情况 任务管理器进程TAB页,字段头区域 有PID,√上;
2、另一种情况 任务管理器菜单栏中找下显示字段 PID,√上;
3、cmd命令行执行 jps  -lmv

​ 第三、使用“ thread -n 3 ”查看排名靠前的CPU占用:

  1. 首先,每次servlet请求weblogic classloader会看查看class文件是否有变更,有则重新加载,这是weblogic 热机制;

在这里插入图片描述

  1. 其次,首次访问JSP,weblogic classloader会进行jsp文件资源加载;

在这里插入图片描述

在这里插入图片描述

​ 3.第三,ibatis框架加载xml时也会用weblogic classloader加载资源;

在这里插入图片描述

在这里插入图片描述

原因

​ 本windows服务器是虚拟机,分配的CPU极低,导致不经用,连续2、3个请求CPU能蹦高到100%。

调优

当调整生产模式后,上述第1条问题不存在,CPU使用明显降低,调整如下

在这里插入图片描述

综上,CPU不合理部分问题与weblogic不正当设置、资源加载有关,不涉及业务代码。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值