
JVM故障诊断与性能监控
文章平均质量分 77
JVM故障诊断与性能监控笔记
橙序员小站
记录架构、算法与代码的一线实践,最新文章请访问:https://shiker.tech/
展开
-
自己动手在Cent OS6.9上编译OPENJDK
之前看jvm的时候就尝试编译一下jdk(为什么要自己编译openjdk呢,一方面可以帮助我们了解jvm的运行机制,另一方面我们可以得到jdk的debug版本,而debug版本的调试工具更丰富),但是时间有限,没成功之后也没再管(考试周。。。==||),今天终于有时间把这个坑补上了。看网上都是ubuntu上编译的jdk,为了不雷同,就换个环境吧。没想到换了个环境之后各种坑都有遇上了,实际上并不一帆风...原创 2022-01-23 23:50:29 · 350 阅读 · 0 评论 -
JVM故障诊断与性能优化--运行时数据区(一)
Java对象之家--Java堆java堆一般被分为新生代和老年代。其中新生代存放新生对象,老年代存放老年对象(年龄判断见深入理解jvm二),新生代有可能分为eden区,s0区,s1区,s0和s1区也被称为from区和to区,他们是两块大小相等、可以互换角色的内存空间(实际上是为了进行垃圾回收,即复制算法)。下面通过示例展示java堆、方法区、java栈之间的关系:public class Simp...原创 2022-01-23 23:49:47 · 385 阅读 · 0 评论 -
JVM故障诊断与性能优化--jvm参数了解(二)
跟踪垃圾回收和类加载信息1.跟踪垃圾回收示例---读懂日志:package chapter3;/** * 创建实例,演示垃圾回收,进行4次minorGC * * @author shiker * 预设参数:-verbose:gc -Xms20M -Xmx20M(设置堆容量为20M) -Xmn10M(新生代容量10M) -XX:SurvivorRatio=8(survivor占比8:...原创 2021-12-18 21:29:31 · 644 阅读 · 0 评论 -
JVM故障诊断与性能优化--垃圾回收概念与算法(三)
认识垃圾回收垃圾:指的是存在于内存中的、不会再使用的对象。如果垃圾不会收会占用大量内存导致内存溢出。常用的垃圾回收算法1.引用计数法只要有其它对象引用了此对象,该对象的引用计数器+1,当引用失效时计数器-1。当计数值为0时,对象就可能不再使用。缺点:无法处理循环引用的情况,加法操作和减法操作对系统性能有影响。2.标记清除法标记阶段,首先通过根节点,标记所有根节点...原创 2021-12-18 21:28:57 · 150 阅读 · 0 评论 -
JVM故障诊断与性能优化-垃圾收集器与内存分配(四)
1.垃圾收集器相关概念见:深入理解jvm--垃圾收集器与内存分配策略(二)垃圾收集器的开关 参数 新生代使用的GC 老年代使用的GC -XX:+UseSerialGC serialGC serialOldGC -XX:+UseParNewGC ...原创 2021-12-18 21:28:21 · 408 阅读 · 0 评论 -
JVM故障诊断与性能优化-性能监控工具(五)
Linux下的性能监控工具1.显示系统整体资源使用情况-top命令2.监控内存和CPU-vmstat命令vmstat 1 3示例1--使用vmstat查看java程序占用内存情况package chapter6;import java.util.Random;//去package名放入linux中运行public class HoldLockMa...原创 2021-12-18 21:28:08 · 175 阅读 · 0 评论 -
jvm故障诊断与性能优化(六)--分析Java堆
找到内存溢出的原因1.堆溢出当对象的大小之和大于由Xmx指定的堆空间大小时,会发生溢出错误。示例1--堆溢出(8G内存环境下)public class SimpleHeapOOM { public static void main(String[] args) { ArrayList<byte[]> list = new ArrayList<byte...原创 2021-12-15 23:08:20 · 541 阅读 · 1 评论 -
AOP的底层实现--ASM
在ASM的核心组件中,Opcodes接口定义了一些常量,尤其是版本号、访问标识符、字节码等信息。ClassReader用于读取Class文件,它的作用时进行Class文件的解析,并可以接受一个ClassVisitor,ClassReader会将解析过程中产生的类的部分信息,比如访问提示符、字段、方法逐个送入ClassVisitor,Class Visitor在接受到对应的类信息后,可以进行各自的处...原创 2021-12-15 23:08:07 · 361 阅读 · 0 评论