尚硅谷-互联网大厂高频重点面试题 (第2季)JVM+GC解析

 
 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
熟悉JVM架构与GC垃圾回收机制,以及相应的参数调优,有过在Linux上进行系统优化的经验
在这里插入图片描述

前提复习

JVMGC快速回顾复习串讲

在这里插入图片描述
类装载器子系统
线程私有
线程公有
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
复制算法在年轻代使用(幸存者0区)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
既不浪费空间,又不产生碎片,但是耗时较多。

在这里插入图片描述

JVM垃圾回收的时候如何确定垃圾?是否知道什么是GC Roots?

谈谈你对GCRoots的理解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
对象可达、对象不可达
在这里插入图片描述
在这里插入图片描述
引用可达对象不能被回收、引用不可达对象可以被回收
在这里插入图片描述
引用 实例对象
在这里插入图片描述
在这里插入图片描述

你说你做过JVM调优和参数配置,请问如何盘点查看JVM系统默认值?

JVM的配置参数和X参数

在这里插入图片描述
在这里插入图片描述
标配参数、X参数、XX参数
1~JDK12都在
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
解释执行
编译
混合模式:先编译后执行

JVM的XX参数之布尔类型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如何查看一个正在运行中的java程序,它的某个JVM参数是否开启?具体值是多少?
在这里插入图片描述
使用jps和jinfo两个命令。

在这里插入图片描述
在这里插入图片描述
减号,表示根本没有添加这个参数
在这里插入图片描述
在这里插入图片描述
加号表示开启
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

JVM的XX参数之设值类型

最大堆内存、最大垃圾回收时间
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
元空间的初始值
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

JVM的XX参数之XmsXmx坑题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
初始堆内存
最大堆内存
都是属于XX参数

JVM盘点家底查看初始默认值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
没有冒号的就是没有被改过的初始值
加上冒号的就是用户改过的更新值

JVM盘点家底查看修改变更值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

你平时工作用过的JVM常用配置参数有哪些?

在这里插入图片描述

堆内存初始大小快速复习

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
获取初始堆内存大小和最大的内存大小

常用基础参数栈内存Xss讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
单个线程栈的大小是0
在这里插入图片描述
在这里插入图片描述
如果0那么就代表初始值
在这里插入图片描述
在这里插入图片描述
运行时的栈空间

栈管运行、堆管存储

常用基础参数元空间MetaspaceSize讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
本地物理内存是16G,但是这里元空间只默认取了21M

在这里插入图片描述

在这里插入图片描述

常用基础参数PrintGCDetails讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

常用基础参数SurvivorRatio讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认就是8
在这里插入图片描述
在这里插入图片描述

常用基础参数NewRatio讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认是2
在这里插入图片描述
在这里插入图片描述
可以设置老年代和新生代的比率

常用基础参数MaxTenuring Threshold讲解

最大 吞吐量
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认是15
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

强引用、软引用、弱引用、虚引用分别是什么?

引用 栈里面
实例对象 堆里面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

强引用Reference

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
强引用不会被垃圾回收

软引用SoftReference

内存够的时候不收,内存不够的时候才收
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
因为要模拟自动GC,所以这里我们把手动GC去掉

在这里插入图片描述
在这里插入图片描述

弱引用WeakReference

不管够不够用,都去回收
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

软引用和弱引用的适用场景

现在有一个缓存系统,去读取图片

加载到内存中;
不加载到内存中
在这里插入图片描述
在这里插入图片描述

WeakHashMap案例演示和解析

HashMap
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
弱的,只要一GC就会被回收

虚引用简介

在这里插入图片描述
幽灵引用
在这里插入图片描述

ReferenceQueue引用队列介绍

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
会把弱引用的对象放到引用队列中去

虚引用PhantomReference

GC之前没有放到这个队列中,GC之后会放到这个队列中去
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GCRoots和四大引用小总结

在这里插入图片描述

请谈谈你对OOM的认识

在这里插入图片描述

SOFE之StackOverflowError

在这里插入图片描述
在这里插入图片描述
它是异常还是错误?
error exception
error
这是错误!error!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

OOM之Java heap space

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这是error
这是错误!

栈内存 深度的方法调用导致出不来,栈被占满了
堆内存 对象太大太多了

OOM之GC overhead limit exceeded

超过了最大的极限
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

OOM之Direct buffer memory

Netty技术
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
16GJVM能够使用的物理内存是4G,不属于GC管,不需要拷贝

JVM堆内存,GC,需要拷贝
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

直接内存错误

OOM之unable to create new native thread

不能够创建新的线程了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

OOM之unable to create new native thread

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

OOM之Metaspace

元空间
方法区
放一些类的模板
在这里插入图片描述
在这里插入图片描述
20多M
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.GC垃圾回收算法和垃圾收集器的关系?分别是什么请你谈谈。

在这里插入图片描述
在这里插入图片描述

垃圾收集器回收种类

在这里插入图片描述
串行
并行
并发标记
G1

串行并发并行G1四大垃圾回收方式

在这里插入图片描述
串行
在这里插入图片描述
并行
在这里插入图片描述
并发
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

garbge first
在这里插入图片描述

在这里插入图片描述

7.怎么查看服务器默认的垃圾收集器是哪个?生产上如何配置垃圾收集器的?谈谈你对垃圾收集器的理解?

在这里插入图片描述

如何产看默认的垃圾收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认的是:并行回收

JVM默认的垃圾收集器有哪些

加粗样式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之7大垃圾收集器概述

在这里插入图片描述
在这里插入图片描述
G1都覆盖了young区、old区
在这里插入图片描述

GC之约定参数说明

在这里插入图片描述
在这里插入图片描述
默认新生代的垃圾收集器
老年代
并行新生代
并发新生代
并行老年代

在这里插入图片描述

GC之Serial收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
结果:新生代和老年代都使用默认的垃圾收集器,即串行垃圾收集器

GC之Parallel收集器

在这里插入图片描述
新生代并行、老年代串行

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不推荐使用并行新生代和串行老年代!!
在这里插入图片描述
在这里插入图片描述

GC之ParallelOld收集器

java8的默认垃圾收集器是:新生代并行回收!
在这里插入图片描述
并行新生代
并行老年代
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认就是并行!
在这里插入图片描述

GC之CMS收集器

在这里插入图片描述
在这里插入图片描述
标记清除:节约空间、有内存碎片
在这里插入图片描述
在这里插入图片描述

老年代CMS
新生代并行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1,3停 2,4不用停
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之SerialOld收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

GC之如何选择垃圾收集器

在这里插入图片描述
在这里插入图片描述

8.G1垃圾收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之G1收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之G1底层原理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之G1参数配置及和CMS的比较

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

生产环境服务器变慢,诊断思路和性能评估谈谈?

在这里插入图片描述

JVMGC结合SpringBoot微服务优化简介

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Linux命令之top

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
系统的平均负载值
在这里插入图片描述
在这里插入图片描述

Linux命令之cpu查看vmstat

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux命令之cpu查看pidstat

在这里插入图片描述
在这里插入图片描述

Linux命令之内存查看free和pidstat

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux命令之硬盘查看df

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux命令之磁盘IO查看iostst和pidstat

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux命令之网络IO查看ifstat

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

假如生产环境出现CPU占用过高,请谈谈你的分析思路和定位

CPU占用过高的定位分析思路

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

对于JDK自带的JVM监控和性能分析工具用过哪些?一般你是怎么用的?

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GitHub操作之开启

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GitHub操作之常用词

在这里插入图片描述

在这里插入图片描述

GitHub操作之in搜索

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

GitHub操作之star和fork范围搜索

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

GitHub操作之awesome搜索

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GitHub操作之#L数字

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GitHub操作之T搜索

在这里插入图片描述
在这里插入图片描述

GitHub操作之搜索区域活跃用户

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

 
发布了126 篇原创文章 · 获赞 91 · 访问量 9万+
 
Geekerstar关注

Geekerstar

 

12篇文章

排名:千里之外

 

lishaojun6238关注

lishaojun6238

 

1篇文章

排名:千里之外

 

叩丁3锅关注

叩丁3锅

 

1篇文章

排名:千里之外

 

chizhui8035关注

chizhui8035

 

26篇文章

排名:千里之外

 

 
 
 
 
 
©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

原创

126

粉丝

128

获赞

91

评论

16

访问

9万+

等级:

周排名:

2万+

积分:

2596

总排名:

2万+

勋章:
  • 4

  •  

  •  

  •  
  •  
  •  
  •  
 
你的浏览器目前处于缩放状态,页面可能会出现错位现象,建议100%大小显示。
原创文章 20 获赞 1 访问量 2529

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
熟悉JVM架构与GC垃圾回收机制,以及相应的参数调优,有过在Linux上进行系统优化的经验
在这里插入图片描述

前提复习

JVMGC快速回顾复习串讲

在这里插入图片描述
类装载器子系统
线程私有
线程公有
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
复制算法在年轻代使用(幸存者0区)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
既不浪费空间,又不产生碎片,但是耗时较多。

在这里插入图片描述

JVM垃圾回收的时候如何确定垃圾?是否知道什么是GC Roots?

谈谈你对GCRoots的理解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
对象可达、对象不可达
在这里插入图片描述
在这里插入图片描述
引用可达对象不能被回收、引用不可达对象可以被回收
在这里插入图片描述
引用 实例对象
在这里插入图片描述
在这里插入图片描述

你说你做过JVM调优和参数配置,请问如何盘点查看JVM系统默认值?

JVM的配置参数和X参数

在这里插入图片描述
在这里插入图片描述
标配参数、X参数、XX参数
1~JDK12都在
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
解释执行
编译
混合模式:先编译后执行

JVM的XX参数之布尔类型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如何查看一个正在运行中的java程序,它的某个JVM参数是否开启?具体值是多少?
在这里插入图片描述
使用jps和jinfo两个命令。

在这里插入图片描述
在这里插入图片描述
减号,表示根本没有添加这个参数
在这里插入图片描述
在这里插入图片描述
加号表示开启
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

JVM的XX参数之设值类型

最大堆内存、最大垃圾回收时间
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
元空间的初始值
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

JVM的XX参数之XmsXmx坑题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
初始堆内存
最大堆内存
都是属于XX参数

JVM盘点家底查看初始默认值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
没有冒号的就是没有被改过的初始值
加上冒号的就是用户改过的更新值

JVM盘点家底查看修改变更值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

你平时工作用过的JVM常用配置参数有哪些?

在这里插入图片描述

堆内存初始大小快速复习

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
获取初始堆内存大小和最大的内存大小

常用基础参数栈内存Xss讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
单个线程栈的大小是0
在这里插入图片描述
在这里插入图片描述
如果0那么就代表初始值
在这里插入图片描述
在这里插入图片描述
运行时的栈空间

栈管运行、堆管存储

常用基础参数元空间MetaspaceSize讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
本地物理内存是16G,但是这里元空间只默认取了21M

在这里插入图片描述

在这里插入图片描述

常用基础参数PrintGCDetails讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

常用基础参数SurvivorRatio讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认就是8
在这里插入图片描述
在这里插入图片描述

常用基础参数NewRatio讲解

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认是2
在这里插入图片描述
在这里插入图片描述
可以设置老年代和新生代的比率

常用基础参数MaxTenuring Threshold讲解

最大 吞吐量
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认是15
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

强引用、软引用、弱引用、虚引用分别是什么?

引用 栈里面
实例对象 堆里面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

强引用Reference

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
强引用不会被垃圾回收

软引用SoftReference

内存够的时候不收,内存不够的时候才收
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
因为要模拟自动GC,所以这里我们把手动GC去掉

在这里插入图片描述
在这里插入图片描述

弱引用WeakReference

不管够不够用,都去回收
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

软引用和弱引用的适用场景

现在有一个缓存系统,去读取图片

加载到内存中;
不加载到内存中
在这里插入图片描述
在这里插入图片描述

WeakHashMap案例演示和解析

HashMap
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
弱的,只要一GC就会被回收

虚引用简介

在这里插入图片描述
幽灵引用
在这里插入图片描述

ReferenceQueue引用队列介绍

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
会把弱引用的对象放到引用队列中去

虚引用PhantomReference

GC之前没有放到这个队列中,GC之后会放到这个队列中去
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GCRoots和四大引用小总结

在这里插入图片描述

请谈谈你对OOM的认识

在这里插入图片描述

SOFE之StackOverflowError

在这里插入图片描述
在这里插入图片描述
它是异常还是错误?
error exception
error
这是错误!error!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

OOM之Java heap space

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这是error
这是错误!

栈内存 深度的方法调用导致出不来,栈被占满了
堆内存 对象太大太多了

OOM之GC overhead limit exceeded

超过了最大的极限
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

OOM之Direct buffer memory

Netty技术
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
16GJVM能够使用的物理内存是4G,不属于GC管,不需要拷贝

JVM堆内存,GC,需要拷贝
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

直接内存错误

OOM之unable to create new native thread

不能够创建新的线程了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

OOM之unable to create new native thread

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

OOM之Metaspace

元空间
方法区
放一些类的模板
在这里插入图片描述
在这里插入图片描述
20多M
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.GC垃圾回收算法和垃圾收集器的关系?分别是什么请你谈谈。

在这里插入图片描述
在这里插入图片描述

垃圾收集器回收种类

在这里插入图片描述
串行
并行
并发标记
G1

串行并发并行G1四大垃圾回收方式

在这里插入图片描述
串行
在这里插入图片描述
并行
在这里插入图片描述
并发
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

garbge first
在这里插入图片描述

在这里插入图片描述

7.怎么查看服务器默认的垃圾收集器是哪个?生产上如何配置垃圾收集器的?谈谈你对垃圾收集器的理解?

在这里插入图片描述

如何产看默认的垃圾收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认的是:并行回收

JVM默认的垃圾收集器有哪些

加粗样式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之7大垃圾收集器概述

在这里插入图片描述
在这里插入图片描述
G1都覆盖了young区、old区
在这里插入图片描述

GC之约定参数说明

在这里插入图片描述
在这里插入图片描述
默认新生代的垃圾收集器
老年代
并行新生代
并发新生代
并行老年代

在这里插入图片描述

GC之Serial收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
结果:新生代和老年代都使用默认的垃圾收集器,即串行垃圾收集器

GC之Parallel收集器

在这里插入图片描述
新生代并行、老年代串行

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
不推荐使用并行新生代和串行老年代!!
在这里插入图片描述
在这里插入图片描述

GC之ParallelOld收集器

java8的默认垃圾收集器是:新生代并行回收!
在这里插入图片描述
并行新生代
并行老年代
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
默认就是并行!
在这里插入图片描述

GC之CMS收集器

在这里插入图片描述
在这里插入图片描述
标记清除:节约空间、有内存碎片
在这里插入图片描述
在这里插入图片描述

老年代CMS
新生代并行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
1,3停 2,4不用停
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之SerialOld收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

GC之如何选择垃圾收集器

在这里插入图片描述
在这里插入图片描述

8.G1垃圾收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之G1收集器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之G1底层原理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GC之G1参数配置及和CMS的比较

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

生产环境服务器变慢,诊断思路和性能评估谈谈?

在这里插入图片描述

JVMGC结合SpringBoot微服务优化简介

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Linux命令之top

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
系统的平均负载值
在这里插入图片描述
在这里插入图片描述

Linux命令之cpu查看vmstat

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux命令之cpu查看pidstat

在这里插入图片描述
在这里插入图片描述

Linux命令之内存查看free和pidstat

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux命令之硬盘查看df

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux命令之磁盘IO查看iostst和pidstat

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Linux命令之网络IO查看ifstat

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

假如生产环境出现CPU占用过高,请谈谈你的分析思路和定位

CPU占用过高的定位分析思路

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

对于JDK自带的JVM监控和性能分析工具用过哪些?一般你是怎么用的?

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GitHub操作之开启

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GitHub操作之常用词

在这里插入图片描述

在这里插入图片描述

GitHub操作之in搜索

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

GitHub操作之star和fork范围搜索

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

GitHub操作之awesome搜索

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GitHub操作之#L数字

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

GitHub操作之T搜索

在这里插入图片描述
在这里插入图片描述

GitHub操作之搜索区域活跃用户

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

 
发布了126 篇原创文章 · 获赞 91 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/wangzhipeng47/article/details/105526229