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

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

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页