05 2011 档案

摘要:1. @ProbeClassName String clazz 此处String不能写为java.lang.String 2. location=@Location(Kind.RETURN) public static void traceExecute(AnyType[] args,@ProbeClassName String clazz,@ProbeMethodName String meth... 阅读全文
posted @ 2011-05-29 16:28 redcreen 阅读(2844) 评论(0) 推荐(1)
摘要:前几篇篇文章介绍了介绍了JVM的参数设置并给出了一些生产环境的JVM参数配置参考方案。正如之前文章中提到的JVM参数的设置需要根据应用的特性来进行设置,每个参数的设置都需要对JVM进行长时间的监测,并不断进行调整才能找到最佳设置方案。本文将介绍如果通过工具及Java api来监测JVM的运行状态,并详细介绍各工具的使用方法。 需要监测的数据:(内存使用情况 谁使用了内存 GC的状况) 内存使用情... 阅读全文
posted @ 2011-05-09 11:28 redcreen 阅读(39972) 评论(2) 推荐(3)
摘要:java application项目(非web项目) 改进前: -Xms128m-Xmx128m-XX:NewSize=64m-XX:PermSize=64m-XX:+UseConcMarkSweepGC-XX:CMSInitiatingOccupancyFraction=78-XX:ThreadStackSize=128-Xloggc:logs/gc.log-Dsun.rmi.dgc.serve... 阅读全文
posted @ 2011-05-05 22:27 redcreen 阅读(44512) 评论(2) 推荐(9)
摘要:不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不... 阅读全文
posted @ 2011-05-04 22:47 redcreen 阅读(534435) 评论(14) 推荐(59)
摘要:JVM里的GC(Garbage Collection)的算法有很多种,如标记清除收集器,压缩收集器,分代收集器等等,详见HotSpot VM GC 的种类 现在比较常用的是分代收集(generational collection,也是SUN VM使用的,J2SE1.2之后引入),即将内存分为几个区域,将不同生命周期的对象放在不同区域里:young generation,tenured gener... 阅读全文
posted @ 2011-05-04 22:46 redcreen 阅读(49912) 评论(1) 推荐(4)
摘要:collector种类 GC在 HotSpot VM 5.0里有四种: incremental (sometimes called train) low pause collector已被废弃,不在介绍. 类别 serial collector parallel collector( throughput collector ) concurrent collector(concurrent lo... 阅读全文
posted @ 2011-05-04 22:15 redcreen 阅读(28405) 评论(2) 推荐(3)
摘要:java内存组成介绍:堆(Heap)和非堆(Non-heap)内存 按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是... 阅读全文
posted @ 2011-05-04 13:33 redcreen 阅读(71082) 评论(7) 推荐(20)
摘要:除法散列法似乎通过取k除以m的余数,来将关键字k映射到m个槽的某一个中去,亦即,散列函数为: h(k)=k mod m 当应用除法散列时,要注意m的选择。例如,m不应是2的幂,应为如果m=(2的p次)方,则 h(k)就是k的p个最低位数字。 问题是:对任意进制(s)的关键字k,m=(x的p次方),那么关键字k第几位(P)以前的值将不影响k的散列值? x如果不能整除进制,则p无确定值。 以下是x可以整除进制的情况: P=p-X+1,其中X的值可通过以下公式确定:s=(x的X次方)×Y。 P=P<=1?1:P 例如: 16进制:如果m=16(x=2,p=4),则第一位以前所有值不影 阅读全文
posted @ 2011-05-03 17:02 redcreen 阅读(1978) 评论(0) 推荐(0)