从 0 开始带你成为JVM实战高手
文章平均质量分 85
从 0 开始带你成为JVM实战高手
牵着蜗牛去散步_
这个作者很懒,什么都没留下…
展开
-
年轻代和老年代垃圾回收
在任意时间点,所有动态分配的对象都只能分配在其中一个区间(称为活动区间),而另外一个区间(称为空闲区间)则是空闲的。当有效内存空间耗尽时,JVM将暂停程序运行,开启复制算法GC线程。接下来GC线程会。原创 2022-11-22 08:52:24 · 970 阅读 · 1 评论 -
代码演示GC回收
XX:NewSize=5m 初始新生代大小-XX:MaxNewSize=5m 最大新生代大小-XX:InitialHeapSize=10m 初始堆大小 等同于Xms-XX:MaxHeapSize=10m 最大堆大小 等同于Xmx-XX:SurvivorRatio=8 Eden区占80%-XX:PretenureSizeThreshold=10m 大对象阈值-XX:+UseParNewGC 新生代使用ParNew。原创 2022-11-22 08:49:59 · 529 阅读 · 0 评论 -
JVM区域划分
JVM在运行代码时,他使用多块内存空间,不同的内存空间用来放不同的数据,然后配合代码流程,让系统运行起来。原创 2022-11-22 08:48:47 · 384 阅读 · 0 评论 -
JVM常用参数
Xms和-Xmx,分别用于设置Java堆内存的刚开始的大小,以及允许扩张到的最大大小。对于这对参数,通常来说,都会设置为完全一样的大小。这两个参数,是用来限定Java堆内存的总大小的。原创 2022-11-22 08:47:37 · 859 阅读 · 0 评论 -
G1垃圾回收器
G1垃圾回收器可以同时回收新生代和老年代的对象,不需要两个垃圾回收器配合起来运作,他一个人就可以搞定所有的垃圾回收。。G1也会有新生代和老年代的概念,但是只不过是逻辑上的概念,但是在同一时刻只能属于某个代,G1还提供了专门的Region来存放大对象,而不是让大对象进入老年代的Region中。原创 2022-11-22 08:46:21 · 865 阅读 · 0 评论 -
CMS垃圾回收器
CMS(Concurrent Mark-Sweep)是以牺牲吞吐量为代价来获得最短回收停顿时间的垃圾回收器。对于要求服务器响应速度的应用上,这种垃圾回收器非常适合。在启动JVM参数加上`-XX:+UseConcMarkSweepGC`,这个参数表示对于老年代的回收采用CMS。CMS采用的基础算法是:标记—清除原创 2022-11-22 08:44:42 · 809 阅读 · 0 评论 -
36_抛砖引玉:线程本地化存储如何保证线程安全
图6中,画出了每个线程的栈空间中都含有栈帧,那同学们,如果我们知道了栈帧能存储哪些变量,是不是我们就知道了哪些变量是线程安全的?我们把代码还原到图10中,int c = a + b,基本类型的局部变量是存在栈空间,而new Object()代码创建的的对象实例的确是存在虚拟机的堆空间里,但是Object object只是引用(reference)堆空间里的对象,重要的事情说三遍,是引用,是引用,是引用,而new Object()这个对象只有被当前线程的自己所引用,我们再来看下面这张图。原创 2021-07-21 10:33:44 · 144 阅读 · 0 评论 -
038、大厂面试题:Young GC和Full GC分别在什么情况下会发生?
大厂面试题:Young GC和Full GC分别在什么情况下会发生?原创 2022-11-21 10:07:55 · 599 阅读 · 0 评论 -
005、JVM的垃圾回收机制是用来干嘛的?为什么要垃圾回收?
JVM的垃圾回收机制是用来干嘛的?为什么要垃圾回收?儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)目录前文回顾对象的分配与引用一个方法执行完毕后会怎样?我们创建的Java对象其实都是占用内存资源的不再需要的那些对象应该怎么处理?本文小结1、前文回顾上一篇文章给大家分析了JVM中的几块内存区域分别都是干什么的,今天的文章就给大家初步介绍一下垃圾回收的概念。但是今天的文章对垃圾回收不会切入过深,因为很多学习专栏的朋友都是一些原创 2021-07-20 16:31:46 · 447 阅读 · 0 评论 -
015、大厂面试题:什么情况下JVM内存中的一个对象会被垃圾回收?
大厂面试题什么情况下JVM内存中的一个对象会被垃圾回收?欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)目录:什么时候会触发垃圾回收?被哪些变量引用的原创 2021-07-20 16:38:43 · 318 阅读 · 0 评论 -
065、案例实战:百万级数据误处理导致的频繁Full GC问题优化
案例实战:百万级数据误处理导致的频繁Full GC问题优化欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、事故场景有一次一个线上系统进行了一次版.原创 2021-07-20 17:14:04 · 694 阅读 · 0 评论 -
079、案例实战:一个超大数据量处理系统是如何不堪重负OOM的?
案例实战:一个超大数据量处理系统是如何不堪重负OOM的?欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、前文回顾之前我们已经用代码给大家都演示过.原创 2021-07-20 17:22:45 · 90 阅读 · 0 评论 -
081、如何对对线上系统的OOM异常进行监控和报警!
如何对对线上系统的OOM异常进行监控和报警!欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、前文回顾我们之前已经把OOM的一些核心原理以及事发现.原创 2021-07-20 17:23:56 · 393 阅读 · 0 评论 -
082、一个关键问题:如何在JVM内存溢出的时候自动dump内存快照?
一个关键问题:如何在JVM内存溢出的时候自动dump内存快照?石杉老师最新出品:《C2C 电商系统微服务架构 120 天实战训练营》,点击了解详情儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、前文回顾上一篇文章已经给大家介绍了线上运行的系统如果发生OOM异常如何监控到要不是主动监控,要不是被动发现,总之无论如何,你的系统在经过你的GC优化后,平时也许跑的很正常,结果突然某一天就OOM了,那你总是会知道的。今天的文章.原创 2021-07-20 17:24:27 · 2109 阅读 · 0 评论 -
084、动手实验:JVM栈内存溢出的时候,应该如何解决?
动手实验:JVM栈内存溢出的时候,应该如何解决?石杉老师最新出品:《C2C 电商系统微服务架构 120 天实战训练营》,点击了解详情儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、前文回顾之前的文章,我们分析了Metaspace区域是如何内存溢出的,同时还带着大家分析了一下内存快照。今天这篇文章,我们就带大家分析一下JVM栈内存溢出的时候,怎么来解决。2、栈内存溢出能依托之前的办法解决吗?首先大家思考一个问题:栈内存.原创 2021-07-20 17:25:30 · 238 阅读 · 0 评论 -
083、动手实验:Metaspace区域内存溢出的时候,应该如何解决?
动手实验:Metaspace区域内存溢出的时候,应该如何解决?欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、前文回顾上一讲已经说了我们处理OO.原创 2021-07-20 17:25:00 · 4302 阅读 · 0 评论 -
085、动手实验:JVM堆内存溢出的时候,应该如何解决?
动手实验:JVM堆内存溢出的时候,应该如何解决?欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、前文回顾上一篇文章已经给大家分析了栈内存溢出是如.原创 2021-07-20 17:26:10 · 749 阅读 · 0 评论 -
086、案例实战:每秒仅仅上百请求的系统为什么会因为OOM而崩溃?
案例实战:每秒仅仅上百请求的系统,为什么会因为OOM而崩溃?石杉老师最新出品:《C2C 电商系统微服务架构 120 天实战训练营》,点击了解详情儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、案例背景介绍本文将会给大家分析一个线上的真实生产案例,在这个案例中,一个每秒仅仅只有100+请求的系统却频繁的因为OOM而崩溃。在对这个案例进行深度分析的时候,大家会看到一个OOM问题是如何牵扯到Tomcat底层工作原理、Tom.原创 2021-07-20 17:27:05 · 538 阅读 · 0 评论 -
087、案例实战:Jetty 服务器的 NIO 机制是如何导致堆外内存溢出的?
案例实战:Jetty服务器的NIO机制是如何导致堆外内存溢出的?欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、案例背景引入这个案例是我曾经带过.原创 2021-07-20 17:27:42 · 355 阅读 · 0 评论 -
088、案例实战:一次微服务架构下的RPC调用引发的OOM故障排查实践
案例实战:一次微服务架构下的RPC调用引发的OOM故障排查实践石杉老师最新出品:《C2C 电商系统微服务架构 120 天实战训练营》,点击了解详情儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、案例背景引入这个OOM的案例是发生在微服务架构下的一次RPC调用过程中的,也是一次非常奇怪的故障案例大家应该还记得昨天的文章里讲的一个解决系统OOM故障的核心能力积累,你必须对你线上系统使用的各种技术,从服务框架,到第三方框架.原创 2021-07-20 17:28:13 · 319 阅读 · 0 评论 -
089、案例实战:一次没有WHERE条件的SQL语句引发的OOM问题排查实践!
线上有一个数据同步系统,是专门负责从另外一个系统去同步数据的,简单来说,另外一个系统会不停的发布自己的数据到Kafka中去,然后我们有一个数据同步系统就专门从Kafka里消费数据,接着保存到自己的数据库中去,大概就是这样的一个流程。发现老年代的对象一直在增长,不停的在增长,每次Young GC过后,老年代的对象就会增长不少,而且当老年代的使用率达到100%之后,我们发现会正常触发Full GC,但是Full GC根本回收不掉任何对象。其实上图就是一个典型的对生产和消费的速率没控制好的例子。原创 2021-07-20 17:28:45 · 736 阅读 · 0 评论 -
092、案例实战:每天10亿数据的日志分析系统的OOM问题排查实践!
案例实战:每天10亿数据的日志清洗系统的OOM问题排查实践!石杉老师最新出品:《C2C 电商系统微服务架构 120 天实战训练营》,点击了解详情儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、案例背景引入今天的案例背景是一个每天10亿数据量的日志清洗系统,这个系统做的事情其实非常的简单,他主要就是从Kafka中不停的消费各种日志数据,然后对日志的格式进行很多清洗,比如对一些涉及到用户敏感信息的字段(姓名、手机号、身份.原创 2021-07-20 17:30:30 · 305 阅读 · 0 评论 -
093、案例实战:一次服务类加载器过多引发的OOM问题排查实践!
案例实战:一次服务类加载器过多引发的OOM问题排查实践!欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、案例背景引入公司里有一个非常正常的线上的.原创 2021-07-20 17:31:01 · 506 阅读 · 0 评论 -
094、案例实战:一个数据同步系统频繁OOM内存溢出的排查实践
案例实战:一个数据同步系统频繁OOM内存溢出的排查实践石杉老师最新出品:《C2C 电商系统微服务架构 120 天实战训练营》,点击了解详情儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)1、案例背景首先说一下案例背景,线上有一个数据同步系统,是专门负责从另外一个系统去同步数据的,简单来说,另外一个系统会不停的发布自己的数据到Kafka中去,然后我们有一个数据同步系统就专门从Kafka里消费数据,接着保存到自己的数据库中去.原创 2021-07-20 17:31:51 · 223 阅读 · 0 评论 -
095、总复习:线上系统的JVM参数优化、GC问题定位排查、OOM分析解决
总复习:线上系统的JVM参数优化、GC问题定位排查、OOM分析解决欢迎大家加入我们的儒猿技术交流群,一个纯粹的交流技术、分享面经的地方。群里有一线大厂助教答疑、专栏优秀作业交流、互联网大厂面经分享、知名互联网公司内推,点击下方链接了解:儒猿技术交流群学员面经分享儒猿技术窝优秀学员作业展示儒猿技术交流群日常技术交流及助教答疑如何加群?点击了解儒猿架构官网上线,内有石杉老师架构课最新大纲,儒猿云平台详细介绍,敬请浏览官网:www.ruyuan2020.com(建议PC端访问)今天这篇文章基本到了我们这个专栏的.原创 2021-07-20 17:32:19 · 206 阅读 · 0 评论