JVM-火种
文章平均质量分 70
持续更新JVM知识,包括内存泄漏、jvm调优、类加载等知识!喜欢请关注😍
Leo187
行者常至,为者常成
展开
-
使用jstack查看线程
使用jstack查看线程转载 2022-10-21 09:43:33 · 3683 阅读 · 0 评论 -
介绍一个令“JVMer”神往的社区
jvm是java人的一座高山。内存溢出、jvm内存布局、垃圾回收机制等知识只是其冰山一角,虽然这些知识已足够难以跨越了。原创 2021-02-07 14:00:21 · 325 阅读 · 0 评论 -
UseCompressedOops 压缩指针、JOL内存分布工具学习
为什么需要压缩通常64位JVM消耗的内存会比32位的大1.5倍,这是因为对象指针在64位架构下,长度会翻倍(更宽的寻址)。对于那些将要从32位平台移植到64位的应用来说(假如编译和运行环境同为32或同为64不需要手动开启),平白无辜多了1/2的内存占用,这是开发者不愿意看到的。幸运的是,从JDK 1.6 update14开始,64 bit JVM正式支持了 -XX:+UseCompres...原创 2020-03-28 19:06:15 · 1073 阅读 · 0 评论 -
JVM 类加载过程分析
目录类加载的概述类加载的时机加载阶段的详解加载允许加载的文件格式 如下:-从本地系统中直接加载主动使用验证准备解析初始化卸载类加载的概述我们将开发好的的代码打包为jar或者编译为class文件包,交给tomcat、apache等web服务器,操作系统会启动一个java虚拟机(Java Virtual Machine,JVM)进程来运行w...原创 2020-04-19 22:48:37 · 655 阅读 · 0 评论 -
JVM内存分析案例:分析dump文件,发现内存中存在很多代码无关的int[]数组?
文章转自:不起眼,但是足以让你有收获的JVM内存分析案例一个同学在perfam社区提问:分析dump文件,发现内存中存在很多代码无关的int[]数组?我点进去看了很久,没有发现有任何对象引用此类对象。同时我也仔细查了代码,并没有任何地方显示创建这些数组。分析这个问题说白了,就是说有些int[]对象不知道是哪里来的,于是我拿他的例子跑了跑,好像还真有这么回事。点该 dump 文件详情...转载 2020-03-06 11:00:34 · 3058 阅读 · 0 评论 -
JVM有什么可豪横的!这几段代码助你实战JVM优化
jvm知识对于java开发人员的重要性不言而喻,我们看了各种jvm优化、垃圾回收算法、内存调优的知识点,早就摩拳擦掌想实战了,奈何程序偏偏不溢出了,下面几段代码能帮助你虐爆JVM各个内存区。原创 2020-02-26 18:30:58 · 511 阅读 · 0 评论 -
一次线上系统OutOfMemoryError问题定位及原因分析
最近线上系统出现频繁卡顿的情况,在JVM参数加入了-XX:+PrintGCDetails命令(打印详细GC过程详细数据)。卡顿时查看控制台输出的情况,发现多了很多Full GC,因为Full GC过程是stop the world操作,也就是整个虚拟机都要停止。Full GC持续了几分钟后系统抛出了异常信息,截取部分内容如下java.lang.OutOfMemoryError: Java hea...原创 2019-04-28 13:23:02 · 1231 阅读 · 0 评论 -
JAVA性能监控工具
系统性能监控linux下的使用命令进行监控系统性能pidstat使用sudo apt-get install sysstat命令安装该工具(centos下使用 sudo yum install sysstat命令).pidstat可以监控到每个应用cpu使用率、io使用率、内存使用率。pidstat [ 选项 ] [ <时间间隔> ] [ <次数> ]-u:默认...原创 2019-04-07 11:06:35 · 454 阅读 · 0 评论 -
GC参数解析 UseSerialGC、UseParNewGC、UseParallelGC、UseConcMarkSweepGC
因为为java语言提供支持的虚拟机有很多,不同虚拟机提供的垃圾收集器差别很大。这里讨论的收集器基于JDK1.7 Update14之后的HotSpot虚拟机。这个虚拟机包含的所有垃圾收集器如下图-XX:+UseSerialGC使用串行回收器进行回收,这个参数会使新生代和老年代都使用串行回收器,新生代使用复制算法,老年代使用标记-整理算法。Serial收集器是最基本、历史最悠久的收集器,它是一个...原创 2019-03-30 22:54:10 · 33022 阅读 · 6 评论 -
JVM参数解析 Xmx、Xms、Xmn、NewRatio、SurvivorRatio、PermSize、PrintGC
-verbose:gc-XX:+printGC可以打印GC的简要信息[GC 4790K->374K(15872K), 0.0001606 secs][GC 4790K->374K(15872K), 0.0001474 secs][GC 4790K->374K(15872K), 0.0001563 secs][GC 4790K->374K(15872K), 0.0...原创 2019-03-24 19:13:54 · 3553 阅读 · 0 评论 -
OutOfMemoryError:PermGen space
java.lang.OutOfMemoryError: PermGen spaces是指永久区内存溢出的错误,这个错误在java项目中十分常见。原创 2018-11-08 20:09:26 · 15367 阅读 · 1 评论