JVM调优总结(5):典型配置
以下配置主要针对分代垃圾回收算法而言。堆大小设置年轻代的设置很关键JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java... …… 阅读全文
以下配置主要针对分代垃圾回收算法而言。堆大小设置年轻代的设置很关键JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java... …… 阅读全文
为什么要分代分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。在Java程序运行的过程中,会产生大量的对象,其中有些对象是与业务信息相关,比如Http请求中的Session对象、线程、Socket连接,这类对象跟业务直接挂钩,因此生命周期比较长。但是还有一些对象,主要是程序运行过程中生成的临时变量,这些对象生命... …… 阅读全文
如何区分垃圾上面说到的“引用计数”法,通过统计控制生成对象和删除对象时的引用数来判断。垃圾回收程序收集计数为0的对象即可。但是这种方法无法解决循环引用。所以,后来实现的垃圾判断算法中,都是从程序运行的根节点出发,遍历整个对象引用,查找存活的对象。那么在这种方式的实现中,垃圾回收从哪儿开始的呢?即,从哪儿开始查找哪些对象是正在被当前系统使用的。上面分析的堆和栈的区别,其中栈是真正进行程序执行地方,所... …… 阅读全文
JVM调优工具Jconsole,jProfile,VisualVMJconsole :jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。详细说明参考这里JProfiler:商业软件,需要付费。功能强大。详细说明参考这里VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。如何调优观察内存释放情况、集合类检查、对象树上面这些调优工具都... …… 阅读全文
今天上午面试的公司不是我投的简历,而是在一个QQ群里公司的HR发消息,然后我就试着去面试了一下。马上快到周末了,也准备从下周才开始的,可既然有了,那就试试吧(毕竟投了几十封简历也未必有一家能有邀约)。那位HR姐姐通知的是10点半,地点在工人体育场那边,我住在史各庄,向比较还是有点远的,当时也没怎么注意时间,出发的有点晚了,对那地方又不熟,找了半天,结果可想而知,迟到了。更不可原谅的 …… 阅读全文
昨天在一个qq群里发出求职通知,问有没有公司招人的,然后一位叫"牛哥"的说他们公司招人,聊了一会然后说让我过去面试,第二天我就去面试了。吸取昨天迟到的教训,这次我早早的就到了公司,说是十点开始,我九点二十就到了。7点半起床,洗漱好出门,走到了地铁生命科学园站,我滴个神啊,人真多,我排在了队伍后面,一会来了一趟车,没挤上去,剩下四个(包括我),继续等下班车,地铁昌平线那是叫一个少 …… 阅读全文
今天的面试真的是够受罪的,公司离我住的地方非常非常遥远不说,今天的天气还给我作对了,风呜呜叫的刮啊,叫我给冻得.... 刮风就刮风呗,还时不时的卷起一阵黄沙来,发型无比的酷,公司那地方那叫一个偏僻啊(其实也不是了,只是我没去过而已),十点面试,我七点半就出发了结果到公司已经十点半了,整整三个小时啊,这把我给折腾的...。好了,迟到就迟到吧,开始做题...题量不大,第一题是写出pub …… 阅读全文