JVM调优

  1. 简介
    • JVM是Java Virtual Machine (Java虚拟机) 的缩写
    • 计算设备的规范、虚构出来的计算机
    • 通过在实际的计算机上仿真模拟各种计算机功能来实现的
    • 引入JVM之后, 在不同的平台上不需要编译、就可以运行
  2. JVM的基本结构
    • JVM由三个子系统组成
    • 类加载子系统
    • 运行时数据区(内存结构)

    • 执行引擎
  3. 栈和堆
    • 堆(heap): 存放对象的实例
    • 栈(Stack): 主要是跑程序的
    • 栈是一种堆形集合,其添加和删除元素的操作应在同一段完成,栈按照后进先出的方式进行处理,堆是栈的一个组成元素.
  4. 不全, 后面补上
  5. GC调优
    • 使用可视化工具: GCeasy
    • jvm调优主要就是调整下面的两个指标
      • 停顿时间: 垃圾收集器做垃圾回收终端应用的执行时间。-XX:MaxGCpAUSEMills
      • 吞吐量: 垃圾收集的时间和总时间的占比99最好
    • 第一步: 打印GC日志
      • -verbose:gc: 开启gc日志
      • -XX:+PrintGCDetails: 打印gc详情
      • -XX:+PrintGCDateStamps: 打印gc时间戳
      • -Xloggc:gcc.log : 将日志输出到文件xx(默认位置为桌面)
    • 第二步: 启动项目
      • java -jar -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -Xloggc: ../gcc.log eureak.jar
    • 第三步: 分析日志得到关键的指标数
    • 第四步: 分析GC原因, 调整JVM参数
原文地址:https://www.cnblogs.com/Twittery/p/14923259.html