- 15
- 0
- 约8.24千字
- 约 25页
- 2016-03-07 发布于湖北
- 举报
Metarnet Technologies Co.,Ltd. JVM内存监控及性能调优 * 黄国庆 重庆市擎天博元科技有限公司 * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 主要内容 什么是JVM JVM内存模型 内存分配 垃圾回收 监控实例 配置实例 * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 什么是JVM? 基本上来说,JVM是一个虚拟运行环境,对于字节码来说就像是一个机器一样,可以执行任务,并通过底层实现执行内存相关的操作。 JVM使Java程序做到了“一次编写,到处运行”。 JVM解放了程序员,使程序员不必再关系对象的生命周期,使程序员不必再关心应该在何时释放内存。 可以将JVM当做是一种专为Java而生的特殊的操作系统,它的工作是管理运行Java应用程序的运行时环境。 * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 什么是OOM? out-of-memory 系统无法为新线程和新对象分配空间 “堆”满了,垃圾回收不成功 影响:业务宕机 * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 JVM内存模型 各个年代: 新生代(Young Generation) 伊甸园空间(Eden?)、幸存者空间(Survivor?) 最新被创建的对象会被分配到这里,由于大部分对象在创建后会很快变得不可到达,所以很多对象被创建在新生代,然后消失。 老年代(Old Generation) 对象没有变得不可达,并且从新生代中存活下来,会被拷贝到这里。 持久代(Permanent Generation) 也被称为方法区(method area)。他用来保存类常量以及字符串常量。 先理解养鱼专业户的“渔池” ? * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 JVM内存模型 每个空间的执行顺序如下: 绝大多数刚刚被创建的对象会存放在伊甸园空间。 在伊甸园空间执行了第一次GC之后,存活的对象被移动到其中一个幸存者空间。 ? 此后,在伊甸园空间执行GC之后,存活的对象会被堆积在同一个幸存者空间。 ?当一个幸存者空间饱和,还在存活的对象会被移动到另一个幸存者空间。之后会清空已经饱和的那个幸存者空间。 在以上的步骤中重复几次依然存活的对象,就会被移动到老年代。 * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 JVM内存模型 垃圾回收(GC)是旨在释放不可达Java对象所占用的内存的过程,是Java virtual machine(JVM)中动态内存管理系统的核心组成部分。在一个典型的垃圾回收周期中,所有仍被引用的对象,即可达对象,会被保留。没有被引用的Java对象所占用的内存会被释放并回收,以便分配给新创建的对象。 发生在新生代的对象的消失:minor GC(局部垃圾回收) 发生在老年代的对象的消失:major GC(完全垃圾回收) * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 内存分配 当你在启动Java应用程序时指定了启动参数_-Xmx_(例如,java -Xmx2g MyApp),则相应大小的内存会被分配给Java进程。这块内存即所谓的*Java堆*(或简称为*堆*)。这块专用的内存地址空间用于存储Java应用程序所创建的对象。随着Java应用程序的运行,会不断的创建新对象并为之分配内存,Java堆(即地址空间)会逐渐被填满。 32位与64位的区别 32位JVM最大堆为1.5G 64位JVM最大堆为操作系统中内存可使用空间大小 * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 垃圾回收 minor GC major GC 目标 快速释放不可达对象所占用的内存,防止应用程序出现OOM错误。 回收内存时,对应用程序的性能(指延迟和吞吐量)的影响要尽可能小 原则 JVM堆不是越大越好(堆越大GC时间越长) 不是每个应用程序的JVM配置均可以一样(应用规模、结构和响应要求不一样) 调优的操作是循序渐进的(摸着石头过河) * Metarnet Technologies Co.,Ltd. * JVM内存监控及性能调优 监控实例 JVM监控工具 命令行: jstat (关注GC的次数和GC所耗时间) jmap (将内存堆印象保存为文件) HeapAnalyzer(分析jmap保存的文件) 图形化 Jconsole VisualVM * Metarnet Tec
您可能关注的文档
最近下载
- 行者讲课脉法下篇.doc VIP
- (人教版)数学一年级上册寒假应用题“天天练”作业设计,含30份题组,附参考答案.doc
- 多参数监护仪技术参数和要求.doc VIP
- HL德國創新機能家電烤箱HL-840用户手册.pdf
- (高清!)2025年3月29日河北省事业单位联考C类《职测》真题及答案.pdf VIP
- ZORRO遥控器中文说明书.pdf
- 多参数监护仪技术参数.doc VIP
- 05R417-1 室内管道支吊架建筑工程图集 高清.docx VIP
- 2025届安徽省江南十校高三下学期第一次联考(一模)数学试题含答案.pdf VIP
- 三年级上册数学思维训练题30题,拓展孩子思维能力201123.pdf VIP
原创力文档

文档评论(0)