JVM
文章平均质量分 90
JVM探索实战,感兴趣的话,一起学习吧!
三省同学
牢骚太盛需自省,风物长宜放眼量。
展开
-
Java性能调优杀手锏JMH
JMH(Java Microbenchmark Harness)由 OpenJDK/Oracle 里面那群开发了 Java编译器的大牛们所开发,是一个功能强大、灵活的工具,它可以用于检测和评估Java应用程序的性能,主要目的是测量Java应用程序的性能,尤其是在多线程环境下的性能。它使用自动生成的测试用例,来测量应用程序的性能,而不是简单的测量方法的性能。原创 2023-03-10 10:13:38 · 1683 阅读 · 7 评论 -
SpringBoot线上服务假死解决,CPU内存正常
开发小伙伴都知道线上服务挂掉,基本都是因为cpu或者内存不足,出现GC频繁OOM之类的情况。本篇文章区别以上的情况给小伙伴们带来不一样的服务挂掉。原创 2022-11-09 16:45:00 · 8641 阅读 · 94 评论 -
线上服务假死解决
问题描述高峰期线上服务出现假死,查看内部服务发现微服务其中一个模块出现无响应,一段时间后回复正常排查一出现服务崩溃大家脑海里面可能都会出现内存泄露,数据库cpu爆满、 慢sql等等,但这次确有所不同。通过性能监控发现CPU比平时稍高多占用两核,内存正常 数据库cpu比平时稍高没出现爆满情况 。通过查看GC状态也正常jstat -gc pid分析凡事预则立,通过已有排查信息,得出不存在内存泄露,数据库cpu爆满、 慢sql等这些情况。并且服务在一分钟后会自行恢复,那么可以猜测出在服务不可原创 2022-03-23 16:10:55 · 2290 阅读 · 0 评论 -
【深入理解java虚拟机】JVM故障处理工具介绍
大家都知道JDK的bin目录中有java.exe、 javac.exe这样的命令行工具,这些工具主要是用于监视虚拟机运行状态和进行故障处理的工具。原创 2022-10-26 21:19:27 · 2459 阅读 · 7 评论 -
猿创征文|JVM之自动内存管理详解
自动给对象分配内存以及自动回收分配给对象的内存。本文将通过代码进行实践。本文基于JDK8。原创 2022-08-31 06:15:00 · 777 阅读 · 26 评论 -
猿创征文|JVM之图解垃圾收集器2-Shenandoah和ZGC
如果说收集算法是内存回收的方法论,那垃圾收集器就是内存回收的实践者。本文主要介绍Shenandoah和ZGC。原创 2022-08-30 06:45:00 · 814 阅读 · 8 评论 -
【JVM】图解垃圾收集器1
如果说收集算法是内存回收的方法论,那垃圾收集器就是内存回收的实践者。本文主要介绍六种经典垃圾收集器用到哪些回收算法?适用哪些场景?原创 2022-08-29 11:11:03 · 758 阅读 · 54 评论 -
【JVM】G1垃圾收集器知多少
在JDK 9中G1取代Parallel Scavenge加Parallel Old组合,成为服务端模式下的默认垃圾收集器,而CMS则沦落至被声明为不推荐使用(Deprecate)的收集器。本文主要学习G1垃圾收集器。Garbage First(简称G1)收集器是垃圾收集器技术发展历史上的里程碑式的成果,它开创了收集器面向局部收集的设计思路和基于Region的内存布局形式。G1旨在当前目标应用程序和环境提供延迟和吞吐量之间的最佳平衡使用并行与并发。...原创 2022-08-26 22:16:09 · 1000 阅读 · 22 评论 -
【JVM】虚拟机HotSpot的算法细节实现
本文主要学习虚拟机中HotSpot的算法细节实现。原创 2022-08-24 21:45:41 · 474 阅读 · 14 评论 -
【JVM】Java的四种引用详解
在JDK 1.2版之后,Java对引用的概念进行了扩充,将引用分为强引用(Strongly Re-ference)、软引用(Soft Reference)、弱引用(Weak Reference)和虚引用(Phantom Reference)4种,这4种引用强度依次逐渐减弱。...原创 2022-08-15 12:32:58 · 10802 阅读 · 0 评论 -
【JVM】分代收集和垃圾收集算法详解
本文主要学习,分代收集和垃圾回收算法包含:标记清楚、标记复制、标记整理。原创 2022-08-13 12:50:53 · 650 阅读 · 0 评论 -
【JVM】引用计数和可达性分析算法详解
JVM堆中几乎存放了所有对象的实例,那么垃圾收集器怎么确定哪些对象还“存活”着,哪些已经“死去”呢?本文主要介绍判断对象是否存活算法引用计数算法和可达性分析算法。原创 2022-08-13 07:00:00 · 956 阅读 · 0 评论 -
OutOfMemoryError和StackOverflowError异常实战
本文通过代码验证中JVM中各个运行时区域储存内容及内存溢出处理。主要验证Java堆溢出、虚拟机栈和本地方法栈溢出、方法区和运行时常量池溢出、本机直接内存溢出。原创 2022-08-12 07:00:00 · 515 阅读 · 0 评论 -
IDEA插件JProfiler安装使用
Eclipse内存映像分析工具插件有MAT,IDEA也有JProfiler,本文主要对JProfiler安装及使用进行学习。原创 2022-08-12 07:15:00 · 10596 阅读 · 0 评论 -
一个Java对象有多大(Object \int[])
new一个对象意味着什么呢创造了一个生命亦或是虚无原创 2022-05-24 16:12:07 · 437 阅读 · 0 评论 -
JVM运行时数据区域详解
本文主要介绍JVM运行时数据区域中的:程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区、运行时常量池及相关的直接内存。原创 2022-08-11 07:00:00 · 245 阅读 · 0 评论 -
Java本机内存跟踪NMT实战详解
JVM通常会额外分配内存。这些额外的分配,会导致java程序占用的内存,超出-Xmx的限制。让我们使用NMT查看内存的使用情况。原创 2022-08-10 07:30:00 · 4347 阅读 · 0 评论 -
Java编译器优化逃逸分析详解
Java编译器优化逃逸分析详解原创 2022-08-09 16:23:39 · 437 阅读 · 0 评论 -
Java HotSpot虚拟机提高性能,做了哪些操作
Java HotSpot虚拟机提高性能,做了哪些操作原创 2022-08-10 07:00:00 · 336 阅读 · 0 评论