首页
性能问答
性能文章
训练营
性能专题
发现
性能工具
创作中心
登录
注册
综合
文章
求助
讨论
课程
找人
不起眼,但是足以让你有收获的JVM内存分析案例
关联问题:
为什么内存中存在很多代码无关的int[]数组?
从一起GC血案谈到反射原理
关联问题:
内存 Dump 文件中“sun.reflect.DelegatingClassLoader” 和 “sun.reflect.GeneratedMethodAccessor*” 都是些啥对象呢?
进程无故消失的破案历程
关于内存溢出,咱再聊点有意思的?
揪出一个导致GC慢慢变长的JVM设计缺陷
协助美团kafka团队定位到的一个JVM Crash问题
又发现一个导致JVM物理内存消耗大的Bug(已提交Patch)
又抓了一个导致频繁GC的鬼--数组动态扩容
JVM源码分析之不可控的堆外内存
JVM源码分析之堆外内存完全解读
JVM源码分析之SystemGC完全解读
JVM实战:优化我的IDEA GC
不起眼,但是足以让你收获的JVM内存案例
踩了一个java命令行参数顺序的坑
如何通过反射获得方法的真实参数名(以及扩展研究)
JVM 源码解读之 CMS GC 触发条件
JVM Bug:多个线程持有一把锁?
JVM源码分析之Metaspace解密
记一次GC频繁且间隔较长解决实战总结
JVM源码分析之String.intern()导致的YGC不断变长
全面对比5大GC的内存伸缩能力(译)
译:谁是 JDK8 中最快的 GC
深入理解 G1 的 GC 日志
高吞吐、低延迟 Java 应用的 GC 优化实践
JVM 源码分析之一个 Java 进程究竟能创建多少线程
JVM 源码解读之 CMS 何时会进行 Full GC
JVM 发生 OOM 的 8 种原因、及解决办法
FullGC实战:业务小姐姐查看图片时一直在转圈圈
「每日五分钟,玩转 JVM」:久识你名,初居我心
依赖包滥用System.gc()导致的频繁Full GC
GC一些长时间停顿问题排查及解决办法
ZGC什么时候会进行垃圾回收
JVM源码分析之警惕存在内存泄漏风险的FinalReference(增强版)
JVM菜鸟进阶高手之路二MAT工具相关知识解惑
JVM垃圾回收与一次线上内存泄露问题分析和解决过程
JVM源码分析之栈溢出完全解读
「每日五分钟,玩转JVM」:两种算法
深入理解JAVA虚拟机——类加载
不重启JVM,替换掉已经加载的类,偷天换日?
JVM菜鸟进阶高手之路四如何解决Full GC问题
PhantomReference导致CMS GC耗时严重
JVM源码分析之自定义类加载器如何拉长YGC
海量连接服务端CMS调优记
JVM源码分析之临门一脚的OutOfMemoryError完全解读
32个问题,学习Java虚拟机的运行时数据区
JVM Code Cache空间不足,导致服务性能变慢
Java 虚拟机进程状态管理工具 jps 失效?吓尿了!
JVM源码分析之不保证顺序的Class.getMethods
JVM菜鸟进阶高手之路六OLAP系统垃圾回收器选择
刨根问底——记一次 OOM 试验造成的电脑雪崩引发的思考
JVM源码分析之jstat工具原理完全解读
重磅:解读2020年最新JVM生态报告
一个 JVM 参数引发的频繁 CMS GC
小心踩雷,一次Java内存泄漏排查实战
JVM源码分析之Object.wait/notify(All)完全解读
生产环境JVM内存溢出案例分析
JVM菜鸟进阶高手之路五之eden survivor分配问题
JVM CPU Profiler技术原理及源码深度解析
JVM源码分析之javaagent原理完全解读
强如 Disruptor 也发生内存溢出?
去哪儿国内酒店稳定性治理实践之缓存治理
FGC实战:如何用Idea揪出开源组件调用System.gc导致频繁FGC
ThreadDump堆栈分析
服务刚启动就 Old GC,要闹哪样?
spring boot 引起的 “堆外内存泄漏”
不可逆的类初始化过程
从实际案例聊聊Java应用的GC优化
JVM源码分析之System.currentTimeMillis及nanoTime原理详解
一次百万长连接压测 Nginx OOM 的问题排查分析
一个诡异的full gc查找问题
JVM源码分析之JDK8下的僵尸(无法回收)类加载器
JVM参数系列 - 学习JVM参数前必须了解的
JVM菜鸟进阶高手之路三Tomcat调优
一次 HashSet 所引起的并发问题
聊一个可能有惊喜的System GC知识点
一次“诡异”的JVM缓存加载问题排查
网络IO 实战篇 :Java电商系统:重大事故!IO问题引发线上20台机器同时崩溃
类初始化死锁导致线程被打爆!打爆!爆!
CMS GC 新生代默认是多大?
一次线上服务高 CPU 占用优化实践
如何降低young gc时间
进程物理内存远大于Xmx的问题分析
高并发下的 AtomicLong 性能有点差!
Java 动态调试技术原理及实践
国内酒店:通过架构改进,我们计划优化掉300+台服务器
从X86指令深扒JVM的位移操作
JVM源码分析之Attach机制实现完全解读
记一次微服务耗时毛刺排查
实战:OOM 后我如何分析解决的
分享一个新出炉的JVM里不痛不痒的BUG(Attach机制相关)
代表Java未来的ZGC深度剖析,牛逼!
再次剖析 “一个 JVM 参数引发的频繁 CMS GC”
jvm堆内存溢出后,其他线程是否可继续工作
YGC前后新生代变大?
Hotspot GC研发工程师也许漏掉了一块逻辑
频繁操作本地缓存导致YGC耗时过长
一次 JVM 进程退出分析
JDK11现存性能bug(JDK-8221393)深度解析
YGC问题排查,又让我涨姿势了!
注意:两个会导致druid性能下降10倍的参数
System.gc() 源码解读
由「Metaspace容量不足触发CMS GC」从而引发的思考
一次年轻代GC长暂停问题的解决与思考
一次真实的线上OOM问题定位
记一次JVM堆外内存泄露Bug的查找
ZGC,一个超乎想象的垃圾收集器
记一次简单的 JVM 调优
第一次FullGC优化实战
分析和解决JAVA 内存泄露的实战例子
OOM异常会导致JVM退出吗?
一次完整的JVM堆外内存泄漏故障排查记录
一次jvm调优实战
深入理解堆外内存 Metaspace
一次线上 xxl-job 服务异常排查分析
JVM GC 之「AdaptiveSizePolicy」实战
从一个Young GC变慢的案例来聊聊finalize方法
记录一次jvm调优过程
一次线上JVM Young GC调优,搞懂了这么多东西!
年轻代频繁ParNew GC,导致http服务rt飙高
记一次堆外内存泄漏排查过程
一次线上JVM调优实践,FullGC40次/天到10天一次的优化过程
线程池使用不当导致系统崩溃
Java 应用性能调优的一些实践
线上服务的FGC问题排查,看这篇就够了!
实践项目中的JVM调优
CPU 优化线上实战篇:Java JVM 频繁 GC的原因和排查方法
JVM调优实战:解决CMS concurrent-abortable-preclean LongGC的问题
解决服务器进程退出问题(metaspace溢出)实战
G1垃圾回收源码分析(一)
G1垃圾回收源码分析(二)
从应用到内核查接口超时(上)
彻底理解 FinalReference与Finalizer
记一次线上服务不可用问题分析
一次系统性能瓶颈的寻找过程
内存溢出及解决方案
JVM菜鸟进阶高手之路七新生代如何晋升到老年代
内存迟迟下不去,可能你就差一个GC.Collect
记一次Jvm参数调优实战
垃圾回收-实战篇
Elasticsearch调优篇-慢查询分析笔记
G1垃圾回收源码分析(三)
一次 Java 内存泄漏排查过程,涨姿势
G1之REGION SIZE
G1-垃圾回收简述(三)
记一次MapReduce的内存溢出
Unsafe那些事
理解 Linux 的虚拟内存
记一次JVM OOM 实战优化
Docker对JVM一些限制的研究
通过一个线上调优例子了解JMC 与 Event 结构与详细配置
JVM 判断对象已死,实践验证GC回收
全网最硬核 JVM TLAB 分析(上)
全网最硬核 JVM TLAB 分析(下)
豆列:从表到里学习JVM实现
JVM故障处理工具,使用总结
JVM相关 - StackOverflowError 与 OutOfMemoryError
探底分析Java原子类CAS的实现原理—从HotSpot源码到CPU指令cmpxchg
关于JConsole里的“执行GC”按钮与System.gc()的关系
由 JVM Attach API 看跨进程通信中的信号和 Unix 域套接字
空中楼阁之纸上谈兵 我对cms的认识
这些排查内存问题的命令,你用过多少?
Java最前沿技术——ZGC
深入汇编指令理解Java关键字volatile
Java中,那些关于String和字符串常量池你不得不知道的东西
认识HotSpot虚拟机第1篇-在Ubuntu 16.04上编译OpenJDK8的源代码(配视频)
认识HotSpot虚拟机第2篇-调试HotSpot源代码(配视频)
认识HotSpot虚拟机第3篇-HotSpot项目结构
认识HotSpot虚拟机第4篇-HotSpot的启动过程
IDEA 的 debug 怎么实现?出于这个好奇心,我越挖越深!
没有发生GC也进入了安全点?这段关于安全点的JVM源码有点意思!
被虐后,分享一点点JVM调优原理相关的知识和经验
一个 println 竟然比 volatile 还好使?
没源码也没文档,但我还是解决了线上偶发的长耗时问题
XPocket插件jstack_x助力线程问题排查
使用perf解决JDK8U小版本升级后性能下降的问题
字节对齐与Java的指针压缩(上)-字节对齐的渊源
字节对齐与Java的指针压缩(下)-指针压缩
从new Class()入手浅看JVM的oop-klass模型
GC复制存活对象,它内存地址变了么?
GC时对象地址变了,hashCode如何保持不变?
HeapDump性能社区OOM问题排查实战案例精选合集
一个 JVM 解释器bug在 AArch64 平台导致应用崩溃的问题分析
g1源码之YoungGC技术细节探究
从源码出发看zgc的技术内幕
高并发服务优化篇:详解一次由读写锁引起的内存泄漏
JDK 从8升级到11,使用 G1 GC,HBase 性能下降近20%。JDK 到底干了什么
高并发服务优化篇:从RPC预热转发看服务端性能调优
G1源码从写屏障到Rset全面解析
HikariCP这波性能优化,太炸裂了!
使用google perf工具来排查堆外内存占用
卷向字节码-Java异常到底是怎么被处理的?
JNI不正确的信号处理导致JVM崩溃问题分析
JVM NativeMemoryTracking 分析堆外内存泄露
看看毕昇JDK团队是如何解决JVM中CMS的Crash
JAVA应用生产问题排查步骤
Spring Boot引起的“堆外内存泄漏”排查及经验总结
死磕一道面试题引发的对Java内存模型的一点疑问,第四部。
关联问题:
一道面试题引发的对Java内存模型的一点疑问,第三部。
使用NMT和pmap解决JVM资源泄漏问题
相同版本JVM和Java应用,在X86和AArch64平台性能相差30%,何故?
g1源码之Mixed GC与ConcurrentMark细节详解
java中WAITING状态的线程为啥还会消耗CPU
记一次Synchronized关键字使用不合理,导致的多线程下线程阻塞问题排查
改善 Kubernetes 上的 JVM 预热问题
JDK14-ZGC调研初探
记一次类加载失败导致线程阻塞问题排查
g1源码之fullGC算法详解
JVM故障分析及性能优化系列之一:使用jstack定位线程堆栈信息
官方文档竟然有坑!关于G1参数InitiatingHeapOccupancyPercent的正确认知 #我在性能调优路上的打怪日记#
JVM故障分析及性能优化系列之二:jstack生成的Thread Dump日志结构解析
JVM故障分析及性能优化系列之三:jstat命令的使用及VM Thread分析
jstat显示的full GC次数与CMS周期的关系
JVM故障分析及性能优化系列之四:jstack生成的Thread Dump日志线程状态
找出栈上的指针/引用
JVM故障分析及性能优化系列之五:常见的Thread Dump日志案例分析
JVM故障分析及性能优化系列之六:JVM Heap Dump(堆转储文件)的生成和MAT的使用
第1篇-关于Java虚拟机HotSpot,开篇说的简单点
第2篇-Java虚拟机这样来调用Java主类的main()方法
深入剖析JVM堆外内存的监控与回收
G1算法详解
美团海量连接服务端jvm参数调优分享
高级篇:一次Netty"引发的"诡异old gc问题排查过程
JVM性能调优--YGC
第3篇-CallStub新栈帧的创建
一篇说明白什么是oom,为什么会oom,oom的类型和常见解决方法
JVM的内存区域到底是如何划分的?
如何理解和配置 Linux 下的 OOM Killer?
OOM系列之六:java.lang.OutOfMemoryError: 交换空间不足问题详解
OOM系列之八:java.lang.OutOfMemoryError: Kill process or sacrifice child
垃圾回收全集之一:什么是垃圾回收?
垃圾回收全集之三:GC 算法基础篇
jvm误区--动态对象年龄判定
垃圾回收全集之四:GC 算法实现篇(一)串行GC
垃圾回收全集之六:GC 算法实现篇(三)并发标记-清除
居然还有人找不到native方法,我来告你
垃圾回收全集之七:GC 算法实现篇(四)垃圾优先算法
垃圾回收全集之八:GC 调优基础篇
垃圾回收全集之九:GC 调优的工具篇
垃圾回收全集之十:GC 调优的实战篇—高分配速率(High Allocation Rate)
死磕synchronized一:JVM如何执行synchronized修饰的方法
垃圾回收全集之十一:GC 调优的实战篇—过早提升(Premature Promotion)
难怪我看不懂!call_stub竟然这么玄乎!
JVM的多态是如何实现的
从hotspot源码层面剖析Java的多态实现原理
我就奇了怪了,STW到底是怎么做到的
揭开内存屏障的神秘面纱
谈谈指令重排
OopMap看不懂,怎么调优哇
贡献一道自创的超高套路面试题
死磕synchronized二:系统剖析延迟偏向篇一
死磕synchronized三:系统剖析延迟偏向篇二
死磕synchronized四:系统剖析偏向锁篇一
JVM经典面试20问
死磕synchronized五:系统剖析偏向锁篇二
最新研发面试题,Java中的静态方法为什么不能调用非静态方法
高并发服务优化篇:JVM--工程师进阶的必经之路
带你用Java实现JVM篇一:实现字节码文件解析器
OpenJDK16 ZGC 详细源码分析
暴力破解美团最新JVM面试题:无限执行
实战案例:记一次dump文件分析历程
一起 fastjson 和 Spring-Mongo 联合作妖的类卸载事故排查
JVM调优1个月,性能提升400倍!怎样做到的?
一次大量 JVM Native 内存泄露的排查分析(64M 问题)
线上一次简单的 JVM 调优,性能提升了15%
实战:SpringBoot项目优化和JVM调优
全网最硬核 Java 新内存模型解析与实验单篇版(不断更新QA中)
如果线上遇到了OOM,该如何解决?
JVM专家聊字符串常量池(一)
HeapDump性能社区专题系列六:手把手教你玩转JVM性能调优
6 个 Java 工具,轻松分析定位 JVM 问题!
记一次 Netty PR 的提交
用Java如何几分钟处理完30亿个数据
CPU性能优化基本篇:一定要了解Linux CPU哪些基本概念
关于缓存一致性协议、MESI、StoreBuffer、InvalidateQueue、内存屏障、Lock指令和JMM的那点事
JVM 输出 GC 日志导致 JVM 卡住,我 TM 人傻了
【全网首发】主线程异常会导致 JVM 退出?
社招两年半10个公司28轮面试面经
重磅硬核 | 一文聊透对象在JVM中的内存布局,以及内存对齐和压缩指针的原理及应用
【全网首发】JVM性能问题的自动分析
一次java内存top res高排查记录
【全网首发】揭密Java常用性能调优工具的底层实现原理
深入理解 synchronized 的锁优化
JVM 优化踩坑记
Jvm菜鸟进阶高手之路一什么是Jvm?
从HotSpot源码理解DirectByteBuffer
一文带你弄懂 JVM 三色标记算法!
JVM系列开篇:为什么要学虚拟机?
JVM系列第1讲:Java 语言的前世今生
入门篇一:写给小白的JVM学习指南
JVM系列第3讲:到底什么是虚拟机?
JVM系列第2讲:Java 虚拟机的历史
【译】Java:对象重用如何降低延迟并提高性能
将Xms设置为Xmx的好处,竟然还可以减少GC
一次应用程序间歇性出现HTTP 502坏网关错误的排查过程
秒懂JVM的三大参数类型,就靠这十个小实验了
JVM系列第5讲:字节码文件结构
JVM系列第7讲:JVM 类加载机制
JVM系列第6讲:Java 虚拟机内存结构
【译】JVM c1、c2编译线程CPU消耗高怎么办?
JVM系列第8讲:JVM 垃圾回收机制
JVM系列第9讲:JVM垃圾回收器
JVM系列第11讲:JVM参数之堆栈空间配置
JVM系列第12讲:JVM参数之查看JVM参数
【译】打印数组的最难得的一种实现方式:侵入JVM
怒啃 24 小时,终于搞懂上下文切换!
【译】一次Docker 中的 Java 内存消耗问题的排查之旅
CMS垃圾收集器小实验之CMSInitiatingOccupancyFraction参数
JVM 常见线上问题:CPU100%、内存泄露的问题排查
FullGC没及时处理,差点造成P0事故
watchdog没有生效引发的bug?
Java多线程:从基本概念到避坑指南
使用JDK中自带的JVM分析工具解决内存溢出问题
JAVA系列之JVM内存调优
【译】关于JVM — JAVA虚拟机的一篇简单科普
浅谈Java内存上分配空间和内存分配策略
线上问题排查,一不小心踩到阿里的 arthas坑了
一文深入分析 ZGC
【译】JVM内部是如何实现多态性的?(内部方法重载和重写)
干货,深入剖析ReentrantLock源码,推荐收藏
【全网首发】一次想不到的 Bootstrap 类加载器带来的 Native 内存泄露分析
记一次线上RPC超时故障排查及后续GC调优思路
重新认识下JVM级别的本地缓存框架Guava Cache(3)——探寻实现细节与核心机制
毕昇JDK 8 Dynamic CDS 特性介绍
JVM专家权威分析字符串常量池(二)
解读JVM级别本地缓存Caffeine青出于蓝的要诀 —— 缘何会更强、如何去上手
巧用二进制让性能提升100倍,让存储空间减少100倍
【全网首发】一次疑似 JVM Native 内存泄露的问题分析
解读JVM级别本地缓存Caffeine青出于蓝的要诀2 —— 弄清楚Caffeine的同步、异步回源方式
解读JVM级别本地缓存Caffeine青出于蓝的要诀3 —— 讲透Caffeine的数据驱逐淘汰机制与用法
JAVA中使用最广泛的本地缓存?Ehcache的自信从何而来 —— 感受来自Ehcache的强大实力
JAVA中使用最广泛的本地缓存?Ehcache的自信从何而来2 —— Ehcache的各种项目集成与使用初体验
JAVA中使用最广泛的本地缓存?Ehcache的自信从何而来3 —— 本地缓存变身分布式集群缓存,打破本地缓存天花板
虽然是我遇到的一个棘手的生产问题,但是我写出来之后,就是你的了。
【全网首发】从源码角度分析一次诡异的类被加载问题
【全网首发】一次 Dubbo 线程上下文类加载器的疑难杂症分析
Java字节码,你还可以搲的更深一些!
JVM级别内存屏障如何禁止指令重排序的
携程一面:什么是双亲委派模型?
Java运行时数据区域是如何工作的
一篇图文彻底弄懂Class文件是如何被加载进JVM的
通过硬件计数器,将性能提升3倍之旅
深入思考:JVM是如何进行方法调用的
Java代码是如何被CPU狂飙起来的?
不可以不知的Java代码编译历程
内存管理:判断对象是否存活
MySQL 驱动中虚引用 GC 耗时优化与源码分析
JVM coredump分析系列(2):使用Arthas抓取火焰图导致的crash分析
【全网首发】案例分享-full gc导致k8s pod重启
全网最硬核 JVM 内存详解(上)
全网最硬核 JVM 内存详解(下)
一次由热部署导致的 OOM 排查经历
不是单例的单例——巧用ClassLoader
我试图通过这篇文章告诉你,这行源码有多牛逼。
云原生背景下如何配置 JVM 内存
Java中synchronized的优化
如果面试官让你分析类初始化阶段的死锁现象
01 PhantomReference没有进入ReferenceQueue
02 FinalReference.referent的回收时机
03 回顾反射参数问题
04 对象的默认内存布局
05 相互引用的类加载的调试
看完intern源码,和面试官battle,巨自信
堆内存OOM泄露-mat工具分析实践
不会JVM调优怎么进互联网大厂
06 “eden没有发生minor gc, 对象直接分配在了old gen“ 的调试
07 运行时常量池索引的 rewrite
08 String.intern 同一个字符串返回不同的引用
MProfiler通过Hook进行性能诊断
这篇文章关于一个源码调试方法,短小精悍,简单粗暴,但足够好用。
09 给对象添加偏向锁的调试
JAVA 变量的作用域真的是代码块吗?
JVM高阶面试:Java8为什么使用元空间替换永久代?
面试必问,JVM内存模型扫盲
10 偏向锁的退出的调试
Java中使用HashMap时指定初始化容量性能一定会更好吗?
Java高并发之CyclicBarrier简介
ThreadPoolExecutor——高效处理并发任务的必备良器
SpringBoot处理form-data表单接收对象数组
JSCH连接ssh终端执行文件操作
11 偏向锁的重入以及线程1获取偏向锁并释放线程2获取锁的调试
配置Redis LUA脚本
java解析表达式Jexl
12 给对象添加轻量级锁的调试
记一次cpu飙升问题排查
Java字符串池(String Pool)深度解析
万字完整深入解析JVM面试必备,原来这就是和年薪百万的差距
搭稳Netty开发的地基,用漫画帮你分清同步异步阻塞非阻塞
为什么 JVM 叫做基于栈的 RISC 虚拟机
如何随心所欲调试HotSpot VM源代码?(改造为CMakeLists项目)
朋友们,就在今天,JDK 21,它终于带着重磅新特性正式发布了!!!
13 轻量级锁的重入 以及 线程1获取轻量级锁并释放线程2获取锁 的调试
一次 GDB 源码角度分析 jvm 无响应问题
从 Linux 内核角度探秘 JDK MappedByteBuffer
MappedByteBuffer VS FileChannel:从内核层面对比两者的性能差异