
java 虚拟机
文章平均质量分 96
专注JVM知识分享
志哥聊技术
一线互联网研发技术倾囊相授,专注原创分享!
展开
-
JVM系列(十三) -常用调优工具介绍
在之前的文章中,我们介绍了 JVM 常用的命令使用,通过这些命令可以快速的查询线上服务的性能情况和排查相关的问题。不错,命令确实非常的管用,但是要想熟悉的记住这些命令,并非易事,除非很频繁的使用,否则真的很难。多数情况下,如果代码编程合理,服务器配置合理,服务也没有高并发压力,开发人员基本上很少会去关注 JVM 相关性能情况。原创 2024-12-23 15:44:20 · 1118 阅读 · 0 评论 -
JVM系列(十二) -常用调优命令汇总
虽然目前市场上有很多成熟的 JVM 可视化监控分析工具,但是所有的工具其实都依赖于 JDK 的接口和底层相关的命令,了解这些命令的使用对于我们在紧急情况下排查 JVM 相关的线上故障,会有更加直观的帮助。原创 2024-12-23 15:35:42 · 1248 阅读 · 0 评论 -
JVM系列(十一) -GC日志分析
在之前的文章中,我们介绍了 JVM 的垃圾收集器相关知识,那么如何分析当前虚拟机性能呢?其中 GC 日志起到至关重要的作用。实际上,每种垃圾收集器都有它独立的日志格式,尽管如此,虚拟机为了方便用户阅读,将各个收集器的日志都维持在一定的共性状态。下面我们一起来看看不同的垃圾收集器,相关的 GC 日志内容。原创 2024-10-22 15:13:02 · 1191 阅读 · 1 评论 -
JVM系列(十) -垃圾收集器介绍
如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。不同的虚拟机所提供的垃圾收集器可能会有很大差异,以 HotSpot 虚拟机为例,所包含的垃圾收集器可以用如下图来概括。原创 2024-10-22 15:10:01 · 908 阅读 · 0 评论 -
JVM系列(九) -垃圾对象的回收算法介绍
在之前的文章中,我们介绍了 JVM 内部布局、对象的创建过程以及运行期的相关优化手段。今天通过这篇文章,我们一起来了解一下对象回收的判定方式以及垃圾对象的回收算法等相关知识。原创 2024-10-17 11:51:37 · 1293 阅读 · 0 评论 -
JVM系列(八) -运行期的几种优化技术
在之前的文章中我们谈到过,相比 C/C++ 语言,Java 语言在运行效率方面要稍逊一些,因为 Java 应用程序是在虚拟机上运行,而 C/C++ 程序是直接编译成平台相应的机器码来运行程序。从虚拟机对外发布开始,开发团队一直在努力试图缩小 Java 与 C/C++ 语言在运行效率上的差距。从实际的结果来看,确实成果显著。本文就来聊聊 HotSpot 虚拟机为了提升 Java 程序的执行效率,都实现了哪些激动人心的优化技术。原创 2024-10-15 15:46:26 · 1109 阅读 · 0 评论 -
JVM系列(七) -对象的内存分配流程
在之前的文章中,我们介绍了类加载的过程、JVM 内存布局和对象的创建过程相关的知识。本篇综合之前的知识,重点介绍一下对象的内存分配流程。原创 2024-10-15 15:44:37 · 1164 阅读 · 0 评论 -
JVM系列(六) -对象的创建过程
在之前的文章中,我们介绍了类加载的过程和 JVM 内存布局相关的知识。本篇我们综合之前的知识,结合代码一起推演一下对象的真实创建过程,以及对象创建完成之后在 JVM 中是如何保存的。原创 2024-10-14 15:16:53 · 1706 阅读 · 0 评论 -
JVM系列(五) -内存相关的调优参数
今天这篇文章,并结合之前的介绍知识,一起了解一下 JVM 内存相关的调优参数。原创 2024-10-14 14:45:59 · 1676 阅读 · 0 评论 -
JVM系列(四) -内存布局详解
熟悉 Java 语言特性的同学都知道,相比 C、C++ 等编程语言,Java 无需通过手动方式回收内存,内存中所有的对象都可以交给 Java 虚拟机来帮助自动回收;而像 C、C++ 等编程语言,需要开发者通过代码手动释放内存资源,否则会导致内存溢出。原创 2024-10-11 11:58:59 · 1011 阅读 · 0 评论 -
JVM系列(三) -类加载器及双亲委派模型介绍
在之前的文章中,介绍了类的加载过程中,我们有提到在加载阶段,通过一个类的全限定名来获取此类的二进制字节流操作,其实类加载器就是用来实现这个操作的。原创 2024-10-11 11:55:10 · 1153 阅读 · 0 评论 -
JVM系列(二) -类的加载过程介绍
今天我们就一起来了解一下,虚拟机是如何加载类文件的。原创 2024-10-10 14:17:46 · 1016 阅读 · 0 评论 -
JVM系列(一) -浅谈虚拟机的成长史
众所周知,Java 经过多年的发展,已经从一门单纯的计算机编程语言,发展成了一套成熟的软件解决方案。从互联网到企业平台,Java 是目前使用最广泛的编程语言。原创 2024-10-10 14:13:43 · 1150 阅读 · 0 评论