jvm调试笔录
Posted zz_cl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jvm调试笔录相关的知识,希望对你有一定的参考价值。
运行JDK安装目录中bin下的jconsole.exe,可以进行本地进程或远程进程监控。
对应哪个进程,可以查看端口占用情况来选择,如应用若发布在8081端口,则可以运行命令netstat -aon|findstr "8081" ,获取进程id。
以下是几个常用的cmd进程操作命令
tasklist|findstr "pid" //根据进程id查看进程
tasklist /fi "imagename eq pname(可以使用通配符)" //根据进程名称查看进程
netstat -aon|findstr "8081" //查看端口情况
taskkill /f /t /im /javaw.exe //根据进程名称杀死进程
taskkill /pid 2472 -t -f; //根据进程id杀死进程
或用jps命令来查看当前运行的java进程
通过jconsole可以查看jvm里,heap区下的Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。 非heap区下的Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈)、Local Method Statck(本地方法栈)信息,分析堆内存使用情况,cpu使用情况,线程运行情况,vm参数等等。也可以使用jconsole提供的死锁检测功能来捕获造成死锁原因。也可以直接使用jstack -l pid命令,来打印java进程的dump信息。
以上是关于jvm调试笔录的主要内容,如果未能解决你的问题,请参考以下文章