
JVM学习篇
JVM学习篇
Coder编程
欢迎关注Coder编程公众号,主要分享数据结构与算法、Java相关知识体系、框架知识及原理、Spring全家桶、微服务项目实战、DevOps实践之路、每日一篇互联网大厂面试或笔试题以及PMP项目管理知识等。更多精彩内容正在路上~
展开
-
你说你做过 JVM 调优和参数配置,请问如果盘点查看 JVM 系统默认值?
点击上方“Coder编程”,选择“置顶公众号”技术文章第一时间送达!你说你做过 JVM 调优和参数配置,请问如果盘点查看 JVM 系统默认值?每天进步一点,不做curd工程师JVM 的参...原创 2020-04-29 08:00:00 · 480 阅读 · 0 评论 -
JVM垃圾回收的时候如何确定垃圾?知道什么是GC Roots吗?
点击上方“Coder编程”,选择“置顶公众号”技术文章第一时间送达!JVM垃圾回收的时候如何确定垃圾?知道什么是GC Roots吗?每天进步一点,不做curd工程师什么是垃圾 简单来说就...原创 2020-04-29 08:00:00 · 420 阅读 · 0 评论 -
JVM学习篇 | (一) 初识JAVA栈
(一) 初识JAVA栈若想使自己编写的Java程序高效运行,以及进行正确、高效的异常诊断,JVM是不得不谈的一个话题。本”JVM进阶“专栏大部分内容均来源于经典书籍《深入理解Java虚拟机》。 下面言归正传,本文重点从虚拟机内存模型(运行时数据区域)入手。先看图: 这是一张比较官方的虚拟机模型图,今天讲的就是虚线框中栈的部分。 栈是我们最常用的内存区转载 2018-02-01 15:49:15 · 474 阅读 · 0 评论 -
JVM学习篇 | (二) 初识JAVA堆
在博文《JVM学习篇 | (一) 初识Java栈》中我们说到了栈,他在内存中是连续的空间;保存一个个的栈帧,对应一次次方法的调用;还讲到了他是保存对象的引用,那么对象存在哪里呢?我们来看看昨天的一张图: 对象就存在图中的内存区域,在JVM中,那片区域叫做堆! 由图中可以看到堆的存储结构和栈是不同的,堆在内存中并不是一块连续的区域,他是分散的(物理上是分散,但逻辑上是连续的,大转载 2018-02-01 16:17:49 · 354 阅读 · 0 评论 -
JVM学习篇 | (三) JVM内存分配与回收策略
JVM学习篇 | (三) JVM内存分配与回收策略各位小伙伴大家好,还记得上一博文《JVM学习篇 | (二) 初识JAVA堆》我们讲了什么吗?虚拟机中的堆,他是整个内存模型中占用最大的一部分,而且不是连续的。当有需要分配内存的时候,一般有两个方法分配,指针碰撞和空闲列表。该部分的内存回收是由虚拟机的垃圾收集器GC进行管理的。 刚刚粗略的回忆了上一博文所讲的内容,而这一章我们的重点还转载 2018-02-01 16:42:53 · 314 阅读 · 0 评论 -
JVM学习篇 | (四) 利用MAT排查堆溢出
JVM学习篇 | (四) 利用MAT排查堆溢出堆已经讲得差不多啦,这章我们以一个例子来说说如何设置以及当发生堆溢出的时候怎么排查问题。先看一小段代码: 代码中使用了一个无限循环来为list添加对象,如果采用默认的堆大小的话可能要等待好久才能出现堆溢出的错误,因此我们要将其设置小一点: -Xms10m -Xmx10m -XX:+HeapDumpOnOutOfMemory转载 2018-02-01 17:20:47 · 469 阅读 · 0 评论