- 基础篇一、了解JVM内存结构Java 虚拟机定义了各种在程序执行期间使用的运行时数据区域。这些数据区域有一些是在Java虚拟机启动时创建的,并在Java虚拟机退出时销毁,有一些数据区域是每个线程独有的,在线程创建时创建,在线程销毁时销毁,根据《Java虚拟机规范》的规定,Java虚拟机运行时所需要管理的数据区域主要如下图所示:程序计数器(线程私有)程序计数器是一块非常小的内存区域,因为它只是... 基础篇一、了解JVM内存结构Java 虚拟机定义了各种在程序执行期间使用的运行时数据区域。这些数据区域有一些是在Java虚拟机启动时创建的,并在Java虚拟机退出时销毁,有一些数据区域是每个线程独有的,在线程创建时创建,在线程销毁时销毁,根据《Java虚拟机规范》的规定,Java虚拟机运行时所需要管理的数据区域主要如下图所示:程序计数器(线程私有)程序计数器是一块非常小的内存区域,因为它只是...
- 万字完整深入解析JVM面试必备,原来这就是和年薪百万的差距 万字完整深入解析JVM面试必备,原来这就是和年薪百万的差距
- 针对 Spring Boot 应用在云容器引擎(CCE)中频繁遭遇 Pod 闪退(Exit Code 137),且 JVM 堆内存监控却显示一切正常的“假象”,本文深度解析底层 Cgroup 限制与 JVM 堆外内存的冲突,并提供基于容器感知(Container Support)的标准启动参数配置方案。 针对 Spring Boot 应用在云容器引擎(CCE)中频繁遭遇 Pod 闪退(Exit Code 137),且 JVM 堆内存监控却显示一切正常的“假象”,本文深度解析底层 Cgroup 限制与 JVM 堆外内存的冲突,并提供基于容器感知(Container Support)的标准启动参数配置方案。
- JVM内功心法-GC垃圾回收之GC垃圾回收算法一,垃圾收集算法标记清除算法标记:Collector从引用根节点开始遍历,标记所有被引用的对象。一般是在对象的Header中记录为可达对象。清除:Collector对堆内存进行从头到尾的线性遍历,如果发现某个对象在其Header中没有标记为可达对象,则将其回收。: 算法缺点:1.回收会产生大量的碎片化空间,不利于内存的完整性及连续性,影响后续对... JVM内功心法-GC垃圾回收之GC垃圾回收算法一,垃圾收集算法标记清除算法标记:Collector从引用根节点开始遍历,标记所有被引用的对象。一般是在对象的Header中记录为可达对象。清除:Collector对堆内存进行从头到尾的线性遍历,如果发现某个对象在其Header中没有标记为可达对象,则将其回收。: 算法缺点:1.回收会产生大量的碎片化空间,不利于内存的完整性及连续性,影响后续对...
- JVM内功心法-JVM内存模型之内存溢出jvm常用参数【想在本地更快复现一些问题就可以调节这些参数】:(1)-Xms20M 表示设置JVM启动内存的最小值为20M,必须以M为单位(2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单位。将-Xmx和-Xms设置为一样可以避免JVM内存自动扩展。大的项目-Xmx和-Xms一般都要设置到10G、20G甚至还要高(3)-ver... JVM内功心法-JVM内存模型之内存溢出jvm常用参数【想在本地更快复现一些问题就可以调节这些参数】:(1)-Xms20M 表示设置JVM启动内存的最小值为20M,必须以M为单位(2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单位。将-Xmx和-Xms设置为一样可以避免JVM内存自动扩展。大的项目-Xmx和-Xms一般都要设置到10G、20G甚至还要高(3)-ver...
- JVM内功心法-JVM内存模型之内存溢出jvm常用参数【想在本地更快复现一些问题就可以调节这些参数】:(1)-Xms20M 表示设置JVM启动内存的最小值为20M,必须以M为单位(2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单位。将-Xmx和-Xms设置为一样可以避免JVM内存自动扩展。大的项目-Xmx和-Xms一般都要设置到10G、20G甚至还要高(3)-ver... JVM内功心法-JVM内存模型之内存溢出jvm常用参数【想在本地更快复现一些问题就可以调节这些参数】:(1)-Xms20M 表示设置JVM启动内存的最小值为20M,必须以M为单位(2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单位。将-Xmx和-Xms设置为一样可以避免JVM内存自动扩展。大的项目-Xmx和-Xms一般都要设置到10G、20G甚至还要高(3)-ver...
- (JVM内功心法-类加载之类的生命周期) 1.加载(1)通过一个类的全限定名来获取其定义的二进制字节流(2)将这个字节流所代表的的静态存储结构转化为方法区的运行时数据结构(3)在堆中生成一个代表这个类的Class对象,作为方法区中这些数据的访问入口。 2.1连接-验证验证的主要作用就是确保被加载的类的正确性。也是连接阶段的第一步。说白了也就是我们加载好的.class文件不能对我们的虚拟机有危... (JVM内功心法-类加载之类的生命周期) 1.加载(1)通过一个类的全限定名来获取其定义的二进制字节流(2)将这个字节流所代表的的静态存储结构转化为方法区的运行时数据结构(3)在堆中生成一个代表这个类的Class对象,作为方法区中这些数据的访问入口。 2.1连接-验证验证的主要作用就是确保被加载的类的正确性。也是连接阶段的第一步。说白了也就是我们加载好的.class文件不能对我们的虚拟机有危...
- JVM 内存模型与垃圾回收机制详解 前言JVM(Java Virtual Machine)是 Java 生态的基石。理解 JVM 内存模型与垃圾回收(GC)机制,是写出高性能、低延迟、不泄漏的 Java 应用的前提。本文将从内存区域划分、对象内存布局、GC 算法、主流收集器、调优实战等维度,系统讲解 JVM 内存与 GC 的方方面面。 一、JVM 内存区域划分JVM 在运行时将内存划分为若... JVM 内存模型与垃圾回收机制详解 前言JVM(Java Virtual Machine)是 Java 生态的基石。理解 JVM 内存模型与垃圾回收(GC)机制,是写出高性能、低延迟、不泄漏的 Java 应用的前提。本文将从内存区域划分、对象内存布局、GC 算法、主流收集器、调优实战等维度,系统讲解 JVM 内存与 GC 的方方面面。 一、JVM 内存区域划分JVM 在运行时将内存划分为若...
- 在 Java 后端开发中,绝大多数开发者对 JVM 的堆内存(Heap Memory)了如指掌,但一旦涉及到 NIO(New I/O)或高性能网络框架(如 Netty),就不得不面对一个隐秘而强大的角落——堆外内存(Direct Memory)。如果管理不当,这些“内存刺客”极易引发 OOM(Out Of Memory)甚至导致容器被 K8s 直接 Kill。一、 什么是堆外内存?堆外内存是... 在 Java 后端开发中,绝大多数开发者对 JVM 的堆内存(Heap Memory)了如指掌,但一旦涉及到 NIO(New I/O)或高性能网络框架(如 Netty),就不得不面对一个隐秘而强大的角落——堆外内存(Direct Memory)。如果管理不当,这些“内存刺客”极易引发 OOM(Out Of Memory)甚至导致容器被 K8s 直接 Kill。一、 什么是堆外内存?堆外内存是...
- 使用华为云 PerfTest(原 CPTS)对 CCE 上部署的 Java 微服务进行全链路性能压测,涵盖压测场景设计、JMeter 脚本适配、实时监控、瓶颈分析、JVM 参数调优、HPA 弹性伸缩策略配置。基于真实数据给出 2C4G / 4C8G / 8C16G 三种规格的性能基线和成本最优配置建议,附 3 个压测踩坑实录和 5 套调优模板。 使用华为云 PerfTest(原 CPTS)对 CCE 上部署的 Java 微服务进行全链路性能压测,涵盖压测场景设计、JMeter 脚本适配、实时监控、瓶颈分析、JVM 参数调优、HPA 弹性伸缩策略配置。基于真实数据给出 2C4G / 4C8G / 8C16G 三种规格的性能基线和成本最优配置建议,附 3 个压测踩坑实录和 5 套调优模板。
- 本周 JVM 生态密集更新:Spring AI 2.0 引入自纠错结构化输出,Spring Boot 3.5.16/Spring Data 2025.0.13 终结 3.5.x 系列,Quarkus 紧急修复 CVE-2026-505... 本周 JVM 生态密集更新:Spring AI 2.0 引入自纠错结构化输出,Spring Boot 3.5.16/Spring Data 2025.0.13 终结 3.5.x 系列,Quarkus 紧急修复 CVE-2026-505...
- 本周 Java 生态密集发布:JDK 26 性能改进详解、JDK 27 新增 PEM 编码 JEP、Spring Batch/gRPC/GraphQL/Vault 多版本齐发、Quarkus 3.36.2 和 Vert.x 5.1.2... 本周 Java 生态密集发布:JDK 26 性能改进详解、JDK 27 新增 PEM 编码 JEP、Spring Batch/gRPC/GraphQL/Vault 多版本齐发、Quarkus 3.36.2 和 Vert.x 5.1.2...
- 本周Java生态迎来多个重要更新:Spring AI 2.0.0-M8发布、Hibernate 7.4带来新特性、Kotlin 2.4.0正式发布、IntelliJ IDEA 2026.1.3推出。同时,JDK 27带来重磅安全更新:... 本周Java生态迎来多个重要更新:Spring AI 2.0.0-M8发布、Hibernate 7.4带来新特性、Kotlin 2.4.0正式发布、IntelliJ IDEA 2026.1.3推出。同时,JDK 27带来重磅安全更新:...
- 本周 Java 生态迎来多项重要进展:JDK 27 将 G1 设为默认 GC,Vector API 进入第 12 轮孵化;Netflix 分享生产级 Java AOT 实践;Spring AI 多版本齐发;Micronaut 5.0 ... 本周 Java 生态迎来多项重要进展:JDK 27 将 G1 设为默认 GC,Vector API 进入第 12 轮孵化;Netflix 分享生产级 Java AOT 实践;Spring AI 多版本齐发;Micronaut 5.0 ...
- 本期涵盖 Java 26 最新动态、JDK 27/26 新特性预览、GraalVM 交付模式改革、Project Valhalla 进展、Spring Boot 4.1 预告、多家厂商发布更新(IntelliJ、Compose MP、... 本期涵盖 Java 26 最新动态、JDK 27/26 新特性预览、GraalVM 交付模式改革、Project Valhalla 进展、Spring Boot 4.1 预告、多家厂商发布更新(IntelliJ、Compose MP、...
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签