jvm优化系列
二码先生
做一个有灵魂的开发
展开
-
JVM系列(六)JVM优化常用工具
在jdk的bin目录下有跟多的 *.exe命令行工具,这些工具非常强大可以监控虚拟机和故障处理。名称作用描述jpsJVM进程状态工具(JVM Process Status Tool)用于显示目标系统上JVM的java进程jstatJVM统计监测工具(JVM Statistics Monitoring Tool)主要用于监测显示JVM的性能统计信息jinfo...转载 2020-02-12 21:20:06 · 189 阅读 · 0 评论 -
JVM系列(五)JVM常用参数配置大全
1. GC常用参数1.1 堆栈设置-Xss:每个线程的栈大小-Xms:初始堆大小,默认物理内存的1/64-Xmx:最大堆大小,默认物理内存的1/4-Xmn:新生代大小-XX:NewSize:设置新生代初始大小-XX:NewRatio:默认2表示新生代占年老代的1/2,占整个堆内存的1/3。-XX:SurvivorRatio:默认8表示一个survivor区占用1/8的Eden内存,...转载 2020-02-12 21:02:21 · 107 阅读 · 0 评论 -
JVM系列(四)垃圾收集算法和垃圾收集器
通过上篇文章,我们了解到了在进行GC垃圾回收时,如何判断对象是否是垃圾对象是否可以被回收,那么被标记为垃圾的对象是如何被回收的,被回收后jvm运行时数据区的内存分配又会变成什么样子,本篇文章将逐一进行解答。常用垃圾收集算法1. 标记-清除算法(Mark-Sweep)这是最基础的垃圾回收算法,之所以说它是最基础的是因为它最容易实现,思想也是最简单的。标记-清除算法分为两个阶段:标记阶段和清...原创 2020-02-12 15:19:58 · 218 阅读 · 0 评论 -
JVM系列(三)如何判断对象可以被回收
我们知道JVM的垃圾回收主要集中在堆内存上,当新生代和老年代空间不足时都会发生GC,那么具体有什么区别和具体可以回收哪些对象呢?下面我们一起来探讨一下。Minor GC/Young GC: 又称新生代GC,指发生在新生代的垃圾收集动作;因为Java对象大多是朝生夕灭,所以Minor GC非常频繁,一般回收速度也比较快;Major GC/Full GC: 指发生在老年代的GC;出现Full ...原创 2020-02-11 17:23:57 · 805 阅读 · 0 评论 -
JVM系列(二)运行时数据区
jvm运行时数据区非常重要也是非常基础的部分,但是这部分又是对于jvm参数优化的前提,所以更需要我们要着重掌握。本篇文章从周志明《深入理解java虚拟机》摘录了一些内容。运行时数据区JVM执行java程序的时候会把其所管理的内存划分为若干不同的数据区域(根据虚拟机厂商不同会有差异,这里主要是对hotSpot进行讲解),虚拟机规范并不是一成不变的,Oracle在发布新的JAVA版本时,可能会...原创 2020-02-10 20:52:25 · 121 阅读 · 0 评论 -
JVM系列(一)类加载机制
类加载过程2020年真是一个灾祸重生的一年,开年的春节假期因为肺炎疫情一直延续,弄得人们都人心惶惶,只能憋在家里写写博客打发时间,还是希望疫情早点结束,武汉加油!中国加油!下面言归正传,本系列jvm文章主要从类加载过程、jvm内存模型、jvm垃圾收集、jvm优化等讲解本人对于jvm一些了解,希望能帮助到大家,若有不对之处欢迎,留言一起讨论。上面是JVM虚拟机的一个概览图,本篇博客主要讲解类...原创 2020-02-09 23:39:51 · 139 阅读 · 0 评论