
jvm
文章平均质量分 79
pmdream
每天进步一点点,如果没有学习那就是倒退
展开
-
[jvm] g1有什么缺点?
前言g1回收器,很强大有什么缺点呢?回答个人认为:因为g1 需要rset,也就是卡表(老年代新增的卡表),所以用这个东西来记录新生代和老年代之间的引用关系。(简单讲,更占用内存了)所以堆内存小的,可能不如用parnew +cms 来的块...原创 2021-09-01 16:07:55 · 632 阅读 · 0 评论 -
[jvm]频繁full gc怎么优化
前言今天被问到,如果频繁full gc怎么排查,怎么优化?服务要怎么来手动触发full gc呢?盲猜频繁fullgc,那肯定是老年代不够用了;所以要么就是有巨大对象老是塞进去,要么就是老年代的碎片严重;使用工具抓一下内存,分析一下,哪些对象是最多的,是否合理。老年代大小参数设置错误;分析如果是一次fullgc后,剩余对象不多。那么说明eden区设置太小,导致短生命周期的对象进入了old区。如果一次fullgc后,old区回收率不大,那么说明old区太小。转载 2021-09-01 00:52:03 · 3638 阅读 · 0 评论 -
[jvm]g1
todojvm最重要的回收算法 g1原创 2021-08-19 12:13:04 · 158 阅读 · 0 评论 -
[JVM]阿里的jvm分析工具arthas
前言jvm分析工具有很多,但是我还是用jmap jstack 和arthas。阿里的东西确实不错~要整的东西有好多,接下来看G1的回收算法。arthas怎么读?[ 'ɑ: θəs ] 阿瑟斯使用https://arthas.aliyun.com/doc/quick-start.html可以用这个快速入门;下载:curl -O https://arthas.aliyun.com/arthas-boot.jar启动arthasjava -jar ar..原创 2021-08-11 16:03:44 · 3871 阅读 · 0 评论 -
[JVM]JDK自带分析工具jstack简单分析
前言前面写了jmap 和 visualVM,jstack在实际生产中也用到过,不过当时都记在印象笔记了~最近整理拿出来。使用原创 2021-08-10 17:50:45 · 7480 阅读 · 3 评论 -
[JVM]dump分析工具_fastthread.io
目录前言使用前言dump分析工具,真解决问题还是得靠这种强大的图形化界面hhh这个之前写在印象笔记中,现在拿出来分享整理。使用https://fastthread.io/将线程 jstack pid 出来之后,压缩一下成为zip 然后 上传上去一般线程dump后都是人工去分析,Java线程Dump分析工具fastThread。每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力,虽然各个 Java虚拟机打印的thread dump略有不同原创 2021-08-10 17:46:10 · 9186 阅读 · 0 评论 -
[JVM]JDK自带jvm分析工具-jmap的简单理解
前言关于面试和jvm很多时候会问到工具,昨天看了visualVM,今天再把自带的命令行工具好好看看。使用1.先用jps 查看pidjps的输出信息包括 Java 进程的进程 ID 以及主类名-l将打印模块名以及包名;-v将打印传递给 Java 虚拟机的参数(如-XX:+UnlockExperimentalVMOptions -XX:+UseZGC);-m将打印传递给主类的参数。一般可以这样用:jps -mlvJps -l 更加详细一点localhost:~原创 2021-08-10 16:49:12 · 1215 阅读 · 0 评论 -
[JVM]visualVM分析java项目的堆栈信息
目录前言安装使用结论Minor GC :从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC。Full GC 是清理整个堆空间—包括年轻代和老年代。前言最近离职,在做JVM相关的整理和复习;不应该为了刷题面试而高一些事情,仔细准备,成为一个优秀的人 --by dk首先来个小工具的记录,visualVM 自带的jdk分析工具;安装使用idea 插件安装visualVM launcher然后需要配置参数:1. ..原创 2021-08-09 20:11:30 · 919 阅读 · 0 评论 -
[JVM]服务器上用的是什么内存回收?或者说JAVA8的CMS?
这个问题一定要结合实际。JDK 1.8 默认使用的是 Parallel Scavenge (新生代) 和 Parallel Old (老年代)1.默认使用的新生代垃圾收集器Java8的回收算法(并行回收)Parallel Scavenge(并行回收)-复制算法:Parallel Scavenge收集器是新生代并行收集器,追求高吞吐量,高效利用 CPU。该收集器的目标是达到一个可控制的吞吐量(Throughput)。所谓吞吐量就是CPU用于运行用户代码的时间与CPU总消耗时间的比值,.原创 2020-07-09 20:04:17 · 298 阅读 · 0 评论 -
[JVM]jvm的几连问?
1.JVM内存模型?好像不太稀罕问了都2.JVM在服务器上,你们使用的是什么内存回收算法?有没有看看服务器上的jvm设置?3.怎么调优4.怎么使用jmap和jstack?原创 2020-07-07 20:46:33 · 140 阅读 · 0 评论 -
[JVM]java虚拟机运行时数据区域--程序计数器、虚拟机栈和本地方法栈
前言:JVM很重要,内存模型还是很需要知道的。再次熟悉一遍内容。内容来自《深入理解java虚拟机》一. 运行时数据区域注意共享方法区和堆。但是线程私有的程序计数器,虚拟机栈,本地方法栈1.1 程序计数器(线程私有)程序计数器是一块很小的内存空间,可以当做当前程序所执行的字节码的行号指示器。java底层程序读的是class文件。这是一种概念模型,真的情况可...原创 2020-04-13 02:29:09 · 428 阅读 · 0 评论