jvm
RainManSu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
揭开IBM Java JVM GC实现的神秘内幕
今天,我把以前做Java Optimize的时候IBM送给我的一个光盘从新看了一下。发了一篇 对IBM java 1.3.0 for as400的JVM 的详细介绍。这里为大家揭开IBM Java Jvm GC实现的神秘内幕。 AD:51CTO云计算架构师峰会 抢票进行中! 按照Sam Borman的说法IBM java 1.3.0的GC是HotSpot的2倍,如果在多对称架构中性能更转载 2012-09-17 23:47:44 · 831 阅读 · 0 评论 -
Java GC 日志图解
Java GC日志可以通过 +PrintGCDetails开启 YoungGC日志: FullGC日志: 原文:http://www.chinasb.org/archives/2012/09/4921.shtml转载 2012-12-03 00:04:20 · 1051 阅读 · 0 评论 -
JVM内存模型以及垃圾回收
内存由 Perm 和 Heap 组成. 其中 Heap = {Old + NEW = { Eden , from, to } } JVM内存模型中分两大块,一块是 NEW Generation,另一块是Old Generation.在New Generation中,有一个叫Eden的空间,主要是用来存放新生的对象,还有两个Survivor Spaces(from,to), 它们用来转载 2012-12-02 23:50:40 · 624 阅读 · 0 评论 -
JVM调优总结
堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。 典型设置: java -Xmx3550m -Xms355转载 2012-12-02 23:44:10 · 703 阅读 · 0 评论 -
linux java 分析工具jstact- java stack
我们使用jdk自带的jstack来分析。当linux出现cpu被java程序消耗过高时,以下过程说不定可以帮上你的忙: 1.top查找出哪个进程消耗的cpu高 21125 co_ad2 18 0 1817m 776m 9712 S 3.3 4.9 12:03.24 java转载 2012-12-02 00:41:19 · 2965 阅读 · 0 评论 -
Java 内存泄露监控工具-- JVM监控工具介绍jstack, jconsole, jinfo, jmap, jdb, jstat
jstack -- 如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。另外,jstack工具还可以附属到正在运行的java程序中,看到 当时运行的java程序的java stack和native stack的信息, 如果现在运行的java程序呈现hung转载 2012-12-02 00:16:52 · 1304 阅读 · 0 评论 -
JVM调优总结(三)-基本垃圾回收算法
标记-清除(Mark-Sweep): 此算法执行分两阶段。第一阶段从引用根节点开始标记所有被引用的对象,第二阶段遍历整个堆,把未标记的对象清除。此算法需要暂停整个应用,同时,会产生内存碎片。 复制(Copying): 此算法把内存空间划为两个相等的区域,每次只使用其中一个区域。垃圾回收时,遍历当前使用区域,把正在使用中的对象复制到另外一个区域中。次算转载 2012-09-18 00:02:13 · 780 阅读 · 0 评论 -
探究JVM和GC
1. Java堆中各代分布: 图1:Java堆中各代分布 Young:主要是用来存放新生的对象。 Old:主要存放应用程序中生命周期长的内存对象。 Permanent:是指内存的永久保存区域,主要存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域. 它和和存放Instance的Heap区域不同,GC(Garbage Collectio转载 2012-09-18 00:00:11 · 510 阅读 · 0 评论 -
JVM调优总结(六)-分代垃圾回收详述2
分代垃圾回收流程示意 选择合适的垃圾收集算法 串行收集器 用单线程处理所有垃圾回收工作,因为无需多线程交互,所以效率比较高。但是,也无法使用多处理器的优势,所以此收集器适合单处理器机器。当然,此收集器也可以用在小数据量(100M左右)情况下的多处理器机器上。可以使用-XX:+UseSerialGC打开。 并行收集器转载 2012-09-18 00:22:02 · 1338 阅读 · 0 评论 -
JVM调优总结(四)-垃圾回收面临的问题
如何区分垃圾 上面说到的“引用计数”法,通过统计控制生成对象和删除对象时的引用数来判断。垃圾回收程序收集计数为0的对象即可。但是这种方法无法解决循环引用。所以,后来实现的垃圾判断算法中,都是从程序运行的根节点出发,遍历整个对象引用,查找存活的对象。那么在这种方式的实现中,垃圾回收从哪儿开始的呢?即,从哪儿开始查找哪些对象是正在被当前系统使用的。上面分析的堆和栈的区别,其中栈是真正进转载 2012-09-18 00:19:00 · 837 阅读 · 0 评论 -
JVM调优总结(二)-一些概念
Java对象的大小 基本数据的类型的大小是固定的,这里就不多说了。对于非基本类型的Java对象,其大小就值得商榷。 在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没有任何属性的对象的大小。看下面语句: Object ob = new Object(); 这样在程序中完成了一个Java对象的生命,但是它所占的空间为:4byte转载 2012-09-18 00:16:51 · 505 阅读 · 0 评论 -
JVM调优总结(五)-分代垃圾回收详述1
为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。 在Java程序运行的过程中,会产生大量的对象,其中有些对象是与业务信息相关,比如Http请求中的Session对象、线程、Socket连接,这类对象跟业务直接挂钩,因此生命周期比较长。但是还有一些对象,主要是程序运行过程转载 2012-09-18 00:20:35 · 774 阅读 · 0 评论 -
JVM调优总结(一)-- 一些概念
数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。 基本类型包括:byte,short,int,long,char,float,double,Boolean,returnAddress 引用类转载 2012-09-18 00:14:47 · 547 阅读 · 0 评论 -
jprofiler安装和配置
注意:安装前先用rpm -q jprofiler查询linux上是否已安装jprofiler 1.到官网下载linux安装包,如:jprofiler_linux_7_1_1.rpm 2.上传该安装包到linxu服务器上/opt目录下,重命名: mv jprofiler_linux_7_1_1.rpm jprofiler7.rmp (重命名步骤为可选操作,是为了安装时能生成简单的文件转载 2012-12-05 00:33:05 · 5314 阅读 · 1 评论
分享