原创

JVM调优常用命令

JVM调优常用命令:

1.jstack [option] 进程id
举例: jstack -l 2544 > /root/opt/2544.stack
生成进程2544的线程快照文件到/root/opt目录下

jstack用于生成java虚拟机当前时刻的线程快照。线程快照是当前java虚拟机内每一条线程正在执行的方法堆栈的集合,生成线程快照的主要目的是定位线程出现长时间停顿的原因,如线程间死锁、死循环、请求外部资源导致的长时间等待等。 线程出现停顿的时候通过jstack来查看各个线程的调用堆栈,就可以知道没有响应的线程到底在后台做什么事情,或者等待什么资源。

2. jmap命令
jmap -dump:format=b,file=xxx.dump pid :导出dump堆文件信息
举例:jmap -dump:format=b,file=/opt/logs/java_699.dump 699
导出进程id为699的dump文件至目录/opt/logs/

注意:线上服务别轻易执行jmap命令,因为名字执行期间比较耗系统资源,可能会使正常服务线程阻塞住。

正文到此结束
Loading...