JVM
文章平均质量分 70
Enjoy_Code
专注于J2EE领域,企业级的WEB应用研发,以及系统性能调优。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java体系结构及内存模型
一:Java技术体系模块图 二:JVM内存区域模型 1.方法区 也称"永久代” 、“非堆”, 它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域。默认最小值为16MB,最大值为64MB,可以通过-XX:PermSize 和 -XX:MaxPermSize 参数限制方法区的大小。转载 2016-03-14 15:03:51 · 497 阅读 · 0 评论 -
java中的对象访问原理及图解
对象访问会涉及到Java栈、Java堆、方法区这三个内存区域。 如下面这句代码: [java] view plain copy print? Object objectRef = new Object(); 假设这句代码出现在方法体中,"Object objectRef” 这部分将会反映到Java栈的本地变量中,作为一个转载 2016-03-14 15:41:30 · 2005 阅读 · 0 评论 -
java 垃圾收集算法
跟踪收集器 跟踪收集器采用的为集中式的管理方式,全局记录对象之间的引用状态,执行时从一些列GC Roots的对象做为起点,从这些节点向下开始进行搜索所有的引用链,当一个对象到GC Roots 没有任何引用链时,则证明此对象是不可用的。 下图中,对象Object6、Object7、Object8虽然互相引用,但他们的GC Roots是不可到达的,所以它们将会被判定为是可回收的对象。转载 2016-03-14 16:15:42 · 510 阅读 · 0 评论 -
java 垃圾收集器
HotSpot JVM收集器 上面有7中收集器,分为两块,上面为新生代收集器,下面是老年代收集器。如果两个收集器之间存在连线,就说明它们可以搭配使用。 Serial(串行GC)收集器 Serial收集器是一个新生代收集器,单线程执行,使用复制算法。它在进行垃圾收集时,必须暂停其他所有的工作线程(用户线程)。是Jvm client模式下默认的转载 2016-03-14 16:28:57 · 459 阅读 · 0 评论 -
java 对象的内存分配和回收
对象优先在Eden上分配 大多数情况下,对象优先在新生代Eden区域中分配。当Eden内存区域没有足够的空间进行分配时,虚拟机将触发一次 Minor GC(新生代GC)。Minor GC期间虚拟机将Eden区域的对象移动到其中一块Survivor区域。 大对象直接进入老年代 所谓大对象是指需要大量连续空间的对象。虚拟机提供了一个XX:P转载 2016-03-14 16:57:07 · 712 阅读 · 0 评论 -
java 内存调优
JVM调优主要是针对内存管理方面的调优,包括控制各个代的大小,GC策略。由于GC开始垃圾回收时会挂起应用线程,严重影响了性能,调优的目是为了尽量降低GC所导致的应用线程暂停时间、 减少Full GC次数。 代大小调优 最关键参数:-Xms、 -Xmx 、-Xmn 、-XX:SurvivorRatio、-XX:MaxTenuringThreshold、-XX:PermSize、-转载 2016-03-14 17:05:49 · 654 阅读 · 0 评论 -
java可视化监控工具
1.JConsole JConsole工具在JDK/bin目录下,启动JConsole后,将自动搜索本机运行的jvm进程,不需要jps命令来查询指定。双击其中一个jvm进程即可开始监控,也可使用“远程进程”来连接远程服务器。 进入JConsole主界面,有“概述”、“内存”、“线程”、“类”、“VM摘要”和"Mbean"六个页签:转载 2016-03-14 17:31:17 · 3091 阅读 · 0 评论 -
关于java类加载器理解及畅谈
每一种技术的出现无一不例外都是有现实的需求,就像java这门语言的诞生,正是因为互联网的发展,移动智能设备的诞生,网民数量的爆炸式增加,随之而来的就是软件业的兴起。此时传统汇编,C语言的复杂性就成了制约软件发展的门槛,于是跨平台,面向对象的java应运而生;同理web技术的诞生,90年代互联网诞生之初,那时候的互联网还只属于少数人(科研机构),当时的web只是用来彼此交流一些静态文档,随之诞生了H原创 2016-06-26 16:29:59 · 449 阅读 · 0 评论 -
JVM运行时的数据区
理解JVM运行时的数据区是Java编程中的进阶部分。我们在开发中都遇到过一个很头疼的问题就是OutOfMemoryError(内存溢出错误),但是如果我们了解JVM的内部实现和其运行时的数据区的工作机制,那么前面的问题就会迎刃而解。在这片文章中,我们将简单了解JVM中有哪些运行时数据区以及这些数据区的工作机制。 JVM运行时数据区分类 程序计数器 (Program Counte原创 2016-06-28 10:09:17 · 764 阅读 · 0 评论 -
JVM 内存模型详解
JVM堆(Heap)= 新生代(Young) + 旧生代(Tenured) 新生代(Young)= Eden区 + Survivor区 http://blog.youkuaiyun.com/jollyant/article/details/5647141 http://blog.youkuaiyun.com/zhangren07/article/details/62708原创 2016-04-08 11:08:04 · 537 阅读 · 0 评论 -
JProfiler 的使用
一、安装JProfiler 从http://www.ej-technologies.com/下载5.1.2并申请试用序列号 二、主要功能简介 1.内存剖析 Memory profiler JProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。 所原创 2017-01-01 17:47:30 · 886 阅读 · 0 评论
分享