工具进阶:如何利用 MAT 找到问题发生的根本原因
MAT(Memory Analyzer Tool)是Java内存分析利器。本文介绍如何利用MAT分析堆转储文件,定位OOM、内存泄漏等问题的根本原因。
CATEGORIES / 分类浏览
JVM、并发机制与后端开发,结合源码和实际问题理解运行原理。
MAT(Memory Analyzer Tool)是Java内存分析利器。本文介绍如何利用MAT分析堆转储文件,定位OOM、内存泄漏等问题的根本原因。
复盘一次线程池使用错误导致服务线程数异常飙升的问题,记录从监控告警、线程栈与堆内存分析,到定位重复创建线程池并完成修复的全过程。
《编程高手必学的内存知识》学习笔记,涵盖虚拟内存、页表、进程地址空间、内存映射等核心概念。
讨论 CompletableFuture、Lambda 和 Reactive 等 Java 高级特性的价值、适用场景与使用取舍。
翻译介绍 Java volatile 关键字的可见性、禁止指令重排序、适用场景及其与锁的区别。
ReentrantLock获取锁时会自旋吗?可重入次数有上限吗?本文基于JDK 12源码分析ReentrantLock的重入机制和自旋策略。
云原生时代,Spring Boot应用面临启动慢、内存占用大的挑战。本文探讨如何利用GraalVM实现原生编译,提升Java应用的云原生适配能力。
伪共享(False Sharing)是多处理器系统中的性能杀手,当多个线程修改同一缓存行中的不同变量时,会导致缓存行频繁失效,严重影响性能。本文详解伪共享的原理、影响及解决方案。
Spring MVC还是WebFlux?本文对比两种框架的适用场景,帮助你根据实际需求做出正确选择。
Java final 关键字的内存语义:final 域在构造函数中正确初始化的保证、禁止构造期引用逸出,以及 happens-before 如何让对象引用安全可见。