java性能问题排查(Arthas)

Arthas分析性能问题

线上API服务运行一段时间,某一接口越来越慢,线上没有打印详细日志。
采用Alibaba开源的Java诊断工具,线上服务非springboot框架搭建、采用ssm框架部署jetty容器。

  1. 安装
    通过http://arthas.gitee.io/下载arthas-bin.zip,解压安装到
    /opt/arthas目录下如图:
    在这里插入图片描述

  2. 修改jetty.sh脚本,增加jvm参数
    -XX:+StartAttachListener

  3. 执行命令,启动arthas

    java -jar arthas-boot.jar
    如果报错:

      Connect to telnet server error: 127.0.0.1 3658
     java.net.ConnectException: Connection refused
     at java.net.PlainSocketImpl.socketConnect(Native Method)
     at             java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:589)
        at org.apache.commons.net.SocketClient.connect(SocketClient.java:188)
        at org.apache.commons.net.SocketClient.connect(SocketClient.java:209)
        at com.taobao.arthas.client.TelnetConsole.process(TelnetConsole.java:309)
        at com.taobao.arthas.client.TelnetConsole.main(TelnetConsole.java:166)
Usage: arthas-client [--help] [-c <value>] [-f <value>] [-t <value>] [-w
       <value>] [-h <value>] [target-ip] [port]

Arthas Telnet Client

EXAMPLES:
  java -jar arthas-client.jar 127.0.0.1 3658
  java -jar arthas-client.jar -c 'dashboard -n 1'
  java -jar arthas-client.jar -f batch.as 127.0.0.1

检查jetty进程所属用户
在这里插入图片描述
执行以下步骤

  1. chow -R jetty.jetty /opt/arthas
  2. su jetty
  3. java -jar arthas-boot.jar

进入:
在这里插入图片描述
输入要跟踪的方法:
trace com.shanda.sc.controller.EmailxxxController emailfunc

结果:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值