JVM参数总结及JVM监控工具
  fztgkkRjHIsV 2023年11月02日 46 0


JVM参数总结

JVM参数总结及JVM监控工具_java程序

Java线程状态

线程的五种状态

* 新建:new(时间很短)

* 运行:runnable

* 等待:waitting(无限期等待),timed waitting(限期等待)

* 阻塞:blocked

* 结束:terminated(时间很短)

JVM参数总结及JVM监控工具_tomcat_02

Jvm监控工具

一、jstack

介绍:

jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息。
如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式:jstack [-l] pid
如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。
另外,jstack工具还可以附属到正在运行的java程序中,看到当时运行的java程序的java stack和native stack的信息, 如果现在运行的java程序呈现hung的状态,jstack是非常有用的。

使用:

1、查看运行程序的进程号

JVM参数总结及JVM监控工具_tomcat_03

2、jstack dump当前线程状态

JVM参数总结及JVM监控工具_java程序_04

3、根据当前抓取到的信息进行进一步的分析

二、jvisualvm

jdk自带有个jvisualvm工具、该工具是用来监控java运行程序的cpu、内存、线程等的使用情况。并且使用图表的方式监控java程序、还具有远程监控能力。

前期准备

1、上传tomcat到虚拟机,webapps下存在Prefteach包

2、监控之前先对jvm加监控参数,在tomcat的bin目录下,catalina.sh文件中,搜索JAVA_OPTS=,在if里面,添加:

  -Dcom.sun.management.jmxremote.port=10086 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.1.101
    以上添加的内容,需要修改两处
   1-改port
   2-改hostname为本机ip

3、启动tomcat并打开输出日志:./startup.sh ../logs/catalina.out

jvisualvm使用

1、windows键+R键 输入jvisualvm回车

2、右键远程添加远程主机

JVM参数总结及JVM监控工具_java_05

 

3、在 主机ip 上右键添加jmv连接

JVM参数总结及JVM监控工具_java程序_06

 

4、输入远程连接的端口号点击确定

JVM参数总结及JVM监控工具_java_07

5、双击192.168.1.101:10086,打开如下图所示的界面

JVM参数总结及JVM监控工具_tomcat_08

 

6、进入jvisualvm时时查看程序运行状态

JVM参数总结及JVM监控工具_java程序_09

注释:在测试环境中有可能没有权限在服务器上添加需要远程连接的配置,这样只能使用jstack

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
fztgkkRjHIsV