JVM
文章平均质量分 58
空~自由
懒虫,心血来潮更一下
展开
-
JVM进程CPU占用率过高问题排查
定位故障的思路找出CPU占用率高的进程找出问题进程内CPU占用率高的线程通过线程栈信息找出该线程当时在运行的问题代码段操作步骤1.用top命令查找导致CPU占用率高的进程2. 用top命令查找进程内导致CPU占用率高的线程top -Hbp 进程号例如top -Hbp 153873.用JVM命令 jstack 精确定位出问题的代码段3.1 用jstack 命令dump出线程栈信息,可以直接定位到出问题的代码段。这里也分两步。第一步把上面的线程ID 15531 转...原创 2021-03-29 17:26:34 · 764 阅读 · 0 评论 -
堆栈内存溢出的常见原因
栈内存溢出(StackOverflowError)的常见原因有哪些?栈溢出原因就是方法执行时创建的栈帧超过了栈的深度。最有可能的就是方法递归调用产生这种结果。堆内存溢出(OOM)的常见原因有哪些?OutOfMemoryError: Java heap space。在创建新的对象时, 堆内存中的空间不足以存放新创建的对象时发生。产生原因:程序中出现了死循环,不断创建对象;程序占用内存太多,超过了JVM堆设置的最大值。 OutOfMemoryError: unable to create new原创 2021-03-09 22:36:21 · 5078 阅读 · 0 评论 -
jvm监控工具之jvisualvm&jmc
一、jvisualvm监控方法一使用jstatd1.创建策略文件:jstatd.all.policy,内容如下:grant codebase "file:${java.home}/../lib/tools.jar" { permission java.security.AllPermission;};tools.jar :填写自己安装的路径找到你,需要监控jvm的主机,把这个策略文件jstatd.all.policy放到那台主机上。默认端口10992. 本地打开...原创 2020-08-07 22:17:15 · 893 阅读 · 1 评论 -
JVM GC参数设置及说明
一、设置参数在使用Idea编译器的时候,可以采用以下的运行方式来设置虚拟机的参数:在VM options中输入:-XX:+PrintGCTimeStamps -XX:+PrintGCDetails二、运行在控制台打印如下内容:三、通用参数说明-XX:+PrintGC 打印GC的概要信息-XX:+PrintGCDetails 可以打印GC的详细信息-XX:+PrintHeapAtGC 每次CG后都打印堆栈信息-XX:+PrintGCTimeSt...原创 2020-06-22 20:08:12 · 3005 阅读 · 0 评论