JVM
文章平均质量分 95
jvm
scl、
回首往昔 更进一步 ---工作1年的快乐风男♂
展开
-
JVM3_数据库连接池虚引用ConnectionFinalizerPhantomReference引起的FullGC压力问题排查
按照收集策略划分新生代收集器:Serial、ParNew、Parallel Scavenge;老年代收集器:Serial Old、Parallel Old、CMS;整堆分区收集器:G1、ZGC、Shenandoah吞吐量优先、停顿时间优先吞吐量优先:Parallel Scavenge收集器、Parallel Old 收集器。停顿时间优先:CMS(Concurrent Mark-Sweep)收集器。吞吐量与停顿时间适用场景吞吐量优先:交互少,计算多,适合在后台运算的场景。原创 2024-03-07 19:57:18 · 1529 阅读 · 0 评论 -
《深入理解Java虚拟机第3版》Java内存模型与线程、线程安全与锁优化
目录一、Java内存模型与线程二、线程安全与锁优化一、Java内存模型与线程1、概述对于计算量相同的任务,程序线程并发协调的越有条不紊,小笼包自然就越高,反之,线程之间频繁征用数据,互相阻塞甚至死锁,将会大大降低程序的并发能力现代计算机基本都是内存-缓存-主存三层结构,将运算的数据放到缓存中提高运算速度,结束之后从缓存同步到主存,这样处理器就无须等待缓慢的内存读写了,但是缓存引入的问题就是缓存一致性问题,多路处理器系统中,每个都处理器都对应自己的缓存,当同时对主存中数据运算时,将可能导致自原创 2021-10-09 22:54:48 · 323 阅读 · 0 评论 -
《深入理解Java虚拟机第3版》类文件结构、虚拟机类加载机制
目录类文件结构Class文件的结构魔数与Class文件的版本常量池访问标志类索引、福索引与接口索引集合字段表集合方法表集合属性表集合Code属性Exceotions属性LineNumberTable属性LocalVariableTable及LocalVariableTypeTable属性SourceFile属性ConstantValue属性InnerClass属性…虚拟机类加载机制概述类加载的时机类加载的过程类加载器类与类加载器双亲委派原创 2021-09-25 21:09:07 · 210 阅读 · 2 评论 -
JVM2_直接内存、垃圾回收、判断对象回收算法、垃圾回收算法(标记清除、标记整理、复制算法)、分代回收、垃圾收集器(串行、吞吐量优先、响应时间优先、G1)
目录1直接内存开始1直接内存Direct Memory直接内存:操作系统内存,并不是JVM管理的内存常见的NIO操作时,用于数据缓冲区,类似Java中的缓冲区buffer分配回收成本较高不受JVM内存回收管理区别于传统IO使用直接内存读写速度相对较高JVM不支持直接的文件读写,需要调用本地方法(操作系统相关的方法)来进行...原创 2021-09-14 10:03:40 · 271 阅读 · 0 评论 -
《深入理解Java虚拟机第3版》垃圾收集器与内存分配策略、虚拟机性能监控故障处理工具
目录为什么要了解垃圾收集和内存分配?如何判断对象已死?引用计数算法可达性分析算法JDK1.2之后引用的扩充回收方法区垃圾收集算法分代收集理论标记清除标记复制标记整理1、为什么需要了解垃圾收集和内存分配?当需要排查各种内存溢出、内存泄露问题时,当垃圾收集成为系统达到高并发量的瓶颈时,我们必须对这些“自动化”的技术实施必要的监控和调节。2、如何判断对象已死?2.1、引用计数法在对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1,当有一个地方取消原创 2021-09-09 10:21:04 · 3405 阅读 · 0 评论 -
JVM1_初识JVM、JVM内存结构、程序计数器、虚拟机栈、本地方法栈、堆、方法区、StringTable字符串常量池垃圾回收、优化
引言随着Java行业竞争越来越激烈,面试的难度也在不断的提升初级程序员也是很有必要了解掌握JVM,简单说是为了应对面试,换句话说也是为了长远学习JVM可以更好的理解一些底层的实现自动拆箱、装箱foreach怎么实现的动态代理相关…目录1JVM简单介绍2JVM学习路线3内存结构3.1程序计数器3.2虚拟机栈3.3本地方法栈3.4堆3.5方法区开始1简单介绍2学习路线1JVM内存结构2GC垃圾回收3字节码4类加载器5解释器、即时编译器3.原创 2021-01-27 23:40:44 · 303 阅读 · 2 评论