![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 87
LeoStudying
奋斗中的程序猿
展开
-
10 假如生产环境出现 CPU 过高,请谈谈你的分析思路和定位?
先用 top 命令找出 CPU 占比最高的 ps -ef 或者 jps 进一步定位,得知是一个怎么样的一个后台程序 定位到具体的线程或代码 ps -mp 11111 -o THREAD,tid,time -m 显示所有的线程 -p 进程使用cpu的时间 -o 该参数后是用户自定义格式 将需要的线程 ID 转化为 16 进制格式 jstat <进程ID> | g...原创 2020-04-13 15:51:09 · 228 阅读 · 0 评论 -
9 生产环境服务器变慢,诊断思路和性能评估谈谈?
整机:top CPU:vmstat 内存:free 硬盘:df 磁盘IO:iostat 网络IO:ifstat原创 2020-04-13 15:47:07 · 241 阅读 · 0 评论 -
8 G1 垃圾收集器你了解吗
以前收集器的特点 年轻代和老年代是各自独立且连续的内存块 年轻代收集器使用 eden + S0 + S1 进行复制算法 老年代收集必须扫描整个老年代区域 都是以尽可能的少而快速地执行 GC 为设计原则 G1 是什么 G1 是一种面向服务端的垃圾收集器,应用在多核处理器和大容量内存环境中,在实现高吞吐量的同时,尽可能的满足垃圾收集器的暂停时间要求。 像 CMS 收集器一样,...原创 2020-04-13 15:46:31 · 145 阅读 · 0 评论 -
7 怎么查看服务器默认垃圾收集器是哪个?生产是如何配置垃圾收集器?谈谈你对垃圾收集器的理解?
怎么查看服务器默认垃圾收集器是哪个? Java -XX:+PrintCommandLineFlags Java 的 GC 回收的类型主要有: UseSerialGC,UseParallelGC,UseConcMarkSweepGC,UseParNewGC,UseParallelOldGC,UseG1GC Java 8 以后基本不使用 Serial Old 垃圾收集器 参数说明...原创 2020-04-13 15:41:29 · 320 阅读 · 0 评论 -
6 GC 垃圾回收算法和垃圾收集器的关系?谈谈你的理解?
四种 GC 垃圾回收算法 引用计数 复制回收 标记清除 标记整理 GC 算法是内存回收的方法论,垃圾收集其就是算法的落实的实现。 目前为止还没有完美的收集器的出现,更加没有万能的收集器,只是针对具体应用最适合的收集器,进行分代收集。 串行垃圾回收器(Serial) 它为单线程环境设计且只使用一个线程进行垃圾回收,会暂停所有的用户线程,所以不适合服务环境。 并行垃圾回...原创 2020-04-13 15:40:22 · 158 阅读 · 0 评论 -
5 请谈谈你对 OOM 的认识?
java.lang.StackOverflowError 在一个函数中调用自己就会产生这个错误 java.lang.OutOfMemoryError : Java heap space new 一个很大对象 java.lang.OutOfMemoryError : GC overhead limit exceeded 执行垃圾收集的时间比例太大, 有效的运算量太小,默认情况下,,...原创 2020-04-13 15:37:50 · 232 阅读 · 0 评论 -
4 强引用、软引用、弱引用和虚引用分别是什么?
在Java语言中,除了基本数据类型外,其他的都是指向各类对象的对象引用;Java中根据其生命周期的长短,将引用分为4类。强引用 特点:我们平常典型编码Object obj = new Object()中的obj就是强引用。通过关键字new创建的对象所关联的引用就是强引用。 当JVM内存空间不足,JVM宁愿抛出OutOfMemoryError运行时错误(OOM),使程序异常终止,也不会靠随意回...原创 2020-04-13 15:43:46 · 127 阅读 · 0 评论 -
3 你平时工作用过的 JVM 常用的基本配置参数有哪些?
-Xms 初始大小内存,默认为物理内存 1/64 等价于 -XX:InitialHeapSize -Xmx 最大分配内存,默认为物理内存的 1/4 等价于 -XX:MaxHeapSize -Xss 设置单个线程栈的大小,一般默认为 512-1024k 等价于 -XX:ThreadStackSize -Xmn 设置年轻代的大小 整个JVM内存大小=年轻代大小...原创 2020-04-13 15:32:05 · 216 阅读 · 1 评论 -
2 你说你做过 JVM 调优和参数配置,请问如果盘点查看 JVM 系统默认值?
JVM 的参数类型标配参数 -version -help X 参数(了解) -Xint:解释执行 -Xcomp:第一次使用就编译成本地代码 -Xmixed:混合模式 XX 参数 Boolean 类型:-XX:+ 或者 - 某个属性值(+ 表示开启,- 表示关闭) -XX:+PrintGCDetails:打印 GC 收集细节 -XX:-PrintGC...原创 2020-04-13 15:31:01 · 154 阅读 · 0 评论 -
1 JVM 垃圾回收的时候如何确定垃圾?知道什么是 GC Roots?
什么是垃圾 简单来说就是内存中已经不在被使用到的空间就是垃圾 要进行垃圾回收,如何判断一个对象是否可以被回收? 引用计数法 枚举根节点做可达性分析 为了解决引用计数法的循环引用问题,Java 使用了可达性算法。跟踪收集器采用的为集中式的管理方式,全局记录对象之间的引用状态,执行时从一些列GC Roots的对象做为起点,从这些节点向下开始进行搜索所有的引用链,当一个对象到G...原创 2020-04-13 15:42:55 · 175 阅读 · 0 评论