万隆的笔记 万隆的笔记
博文索引
笔试面试
  • 在线学站

    • 菜鸟教程 (opens new window)
    • 入门教程 (opens new window)
    • Coursera (opens new window)
  • 在线文档

    • w3school (opens new window)
    • Bootstrap (opens new window)
    • Vue (opens new window)
    • 阿里开发者藏经阁 (opens new window)
  • 在线工具

    • tool 工具集 (opens new window)
    • bejson 工具集 (opens new window)
    • 文档转换 (opens new window)
  • 更多在线资源
  • Changlog
  • Aboutme
GitHub (opens new window)
博文索引
笔试面试
  • 在线学站

    • 菜鸟教程 (opens new window)
    • 入门教程 (opens new window)
    • Coursera (opens new window)
  • 在线文档

    • w3school (opens new window)
    • Bootstrap (opens new window)
    • Vue (opens new window)
    • 阿里开发者藏经阁 (opens new window)
  • 在线工具

    • tool 工具集 (opens new window)
    • bejson 工具集 (opens new window)
    • 文档转换 (opens new window)
  • 更多在线资源
  • Changlog
  • Aboutme
GitHub (opens new window)
  • 大纲

    • JVM笔记大纲
      • 概述
      • 走近Java
      • 内存与垃圾回收
      • 字节码与类加载
      • 性能监控与调优
      • 监控与调优案例
  • 走近Java

  • 内存与垃圾回收

  • 字节码与类加载

  • 性能监控与调优

  • 监控与性能调优案例

  • Java虚拟机
  • 大纲
2022-04-20
目录

JVM笔记大纲

# JVM笔记

# 概述

这里归档了关于Java虚拟机的学习笔记或文章,笔记主要来源为:

  • 尚硅谷宋红康JVM全套教程(详解java虚拟机) (opens new window)

    • JVM从入门到精通 (opens new window),这个是另一个博主对上面教程做的笔记,更加接近原版教程
    • 官方公众号资料:下载链接:https://pan.baidu.com/s/1-EqdKhISTwEqto_14FrlQw ,提取码:mx3i
  • 周志明老师的《深入理解Java虚拟机-JVM高级特效与最佳实践(第3版)》。

笔记根据个人的学习过程、思考,会有所修改、调整。

# 走近Java

  • JVM前言 (opens new window)
  • Java与JVM简介 (opens new window)
  • JVM的架构模型 (opens new window)
  • JVM生命周期 (opens new window)
  • Java的发展重大事件 (opens new window)
  • JVM家族 (opens new window)
  • 实战自己编译JDK

# 内存与垃圾回收

Java与C++之间有一堵动态分配和垃圾收集技术所围成的高墙,墙外的人想进去,墙里面的人想出来。

Java的自动内存管理机制学习JVM的重要一节。JVM是java程序的内存管理的“皇帝”,了解虚拟机如何管理内存,方便java程序员检查内存泄漏和内存溢出方面的问题。这一部分核心内容为内存区的划分与垃圾收集器技术,也是面试常考的知识点。

  • JVM内存结构图 (opens new window)
  • 类加载器子系统 (opens new window)
  • 运行时数据区 (opens new window)
  • 程序计数器(PC寄存器) (opens new window)
  • 虚拟机栈 (opens new window)
  • 本地方法栈 (opens new window)
  • 堆** (opens new window)
  • 方法区 (opens new window)
  • 对象的实例化** (opens new window)
  • 直接内存 (opens new window)
  • 执行引擎 (opens new window)
  • String Table** (opens new window)
  • 垃圾回收概述 (opens new window)
  • 垃圾回收相关概念 (opens new window)
  • 垃圾回收算法 (opens new window)
  • 垃圾收集器 (opens new window)
  • 对象访问 (opens new window)
  • 栈帧结构 (opens new window)

# 字节码与类加载

代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,确实编程语言发展的一大步。

各种不同平台的Java虚拟机,以及所有平台都统一支持的程序存储格式——字节码(Byte Code)是构成平台无关性的基石。

  • JVM基石:class文件 (opens new window)
  • class文件结构 (opens new window)
  • javap解析class文件 (opens new window)
  • 字节码指令集 (opens new window)
  • 类的加载过程** (opens new window)
  • 再谈类的加载过程 (opens new window)
  • 附:字节码文件结构手册 (opens new window)
  • 附:字节码指令手册 (opens new window)

# 性能监控与调优

理论总是作为实践指导的工具,把这些知识应用到实际工作中才是我们的最终目的。

工具永远是知识技能的一层包装,没有什么工具是“秘密武器”,拥有了就能“包治百病”。

  • 概述 (opens new window)
  • JVM监控及诊断工具-命令行篇 (opens new window)
  • JVM监控及诊断工具-GUI篇 (opens new window)
  • JVM运行时参数 (opens new window)
  • GC日志分析 (opens new window)
  • 浅堆深堆与支配树 (opens new window)
  • QQL语言查询对象信息 (opens new window)

# 监控与调优案例

除了知识与工具外,经验同样是一个很重要的因素。

  • 概述 (opens new window)
  • Tomcat堆溢出分析 (opens new window)
  • 堆溢出 (opens new window)
  • 方法区溢出 (opens new window)
  • GC overhead limit exceeded (opens new window)
  • 线程溢出 (opens new window)
  • 调整堆大小提高服务的吞吐量 (opens new window)
  • JVM优化之JIT优化 (opens new window)
  • 合理配置堆内存 (opens new window)
  • CPU占用很高排查方案 (opens new window)
  • G1并发执行的线程数对性能的影响 (opens new window)
  • 调整垃圾回收器提高服务的吞吐量 (opens new window)
  • 日均百万级订单交易系统如何设置JVM参数 (opens new window)
  • 内存泄漏与内存溢出 (opens new window)
上次更新: 5/28/2023, 10:57:53 PM
JVM前言

JVM前言→

最近更新
01
2025
01-15
02
Elasticsearch面试题
07-17
03
Elasticsearch进阶
07-16
更多文章>
Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式