JVM康师傅笔记

笔记:

为什么Java占用的RAM比Xmx多得多?

https://www.yuque.com/u21195183/jvm/pgrt7e#ced21557

https://heaphero.io/

jstat -gccause -t -h10 11932 5000 100
输出主要关注已使用空间占总空间的百分比和gc原因 时间 十行一表头 5秒打印一次 打印100次
# 找到 Java 进程 PID
jps -l
# 看哪个线程在吃 CPU
top -Hp <pid>
printf "%x\n" <tid> 把线程 ID 转成十六进制
jstack <pid> | grep -A 30 <hex_tid>
jstack pid > xxx.log  线程情况存放文件  线程的十六进制名
jmap -dump:live,format=b,file=heap.hprof <pid>
 

https://arthas.aliyun.com/doc/quick-start.html 

arthas教程

arthas 跟踪 Http 请求小技巧

heapdump arthas-output/dump.hprof 堆文件
watch java.sql.Connection prepareStatement '{params,throwExp}'  -n 5  -x 3 

 

https://mp.weixin.qq.com/s/tG1kOGtAJzHc37XGlsfAPQ

 

 

https://jaywcjlove.gitee.io/linux-command/    Linux指令

 

https://juejin.cn/post/7101110943442010125#heading-11

 -Xms4096M -Xmx4096M -Xmn3072M -Xss1M 
 -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256M
 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC 
 -XX:CMSInitiatingOccupancyFaction=92 
 -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 
 -XX:+CMSParallelInitialMarkEnabled -XX:+CMSScavengeBeforeRemark 
 -XX:+DisableExplicitGC 
 -XX:+PrintGCDetails -Xloggc:gc.log 
 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/local/app/oom

 

 

 
 
 
posted @ 2023-10-17 14:09  长寿奉孝  阅读(72)  评论(0)    收藏  举报