从Java平台的逻辑结构上来看,我们能够从下图来了解JVM:从上图能清晰看到Java平台包括的各个逻辑模块,也能了解到JDK与JRE的差别对于JVM自身的物理结构,我们能够从下图俯视一下:对于JVM的学习,在我看来这么几个部分最重要:Java代码编译和运行的整个过程JVM内存管理及垃圾回收机制以下将...
分类:
其他好文 时间:
2014-08-10 23:49:50
阅读次数:
253
一、配置JVM内存
1.配置JVM内存的参数有四个:
-XmxJavaHeap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定;
-XmsJavaHeap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值;
-XmnJavaHeapYoung区大小,不熟悉最好保留默认值;
-...
分类:
其他好文 时间:
2014-08-08 12:48:36
阅读次数:
258
你知道如何进行JVM内存查看,这里和大家分享几个JVM内存查看方法,希望对你的学习有所帮助,通常情况下可以用代码查看,也可以在eclipse中增添相关信息后直接查看。JVM内存查看方法可以用代码查看,也可以在eclipse中增添相关信息后直接查看。1.用下面的代码进行JVM内存查看 1 memory...
分类:
其他好文 时间:
2014-08-07 12:04:09
阅读次数:
167
一、JVM内存的设置的原理默认的java虚拟机的大小比较小,在对大数据进行处理时java就会报错:java.lang.OutOfMemoryError。-XmsJavaHeap初始值,-Xms和-Xmx设为相同值,避免垃圾回收后内存重新分配-XmxJavaHeap最大值,默认值为物理内存的1/4-XmnJavaHeapYoung区大小-Xss每个线..
分类:
其他好文 时间:
2014-08-05 11:38:30
阅读次数:
242
复制算法,它将堆上的内存分为两个大小相等的区域,一个是空闲区域,一个是活动区域。在程序运行中,实际使用的是活动区域,也就是有50%的空间被浪费掉。 复制算法的实现过程:1.找出活动空间中所有存活的对象。2.将这些存活的对象复制到空闲区域。3.将之前的活动空间清空,然后,就变为空闲空间了,而...
分类:
其他好文 时间:
2014-08-02 12:18:43
阅读次数:
199
从Java 5开始 引入了 JConsole,来监控 Java 应用程序性能和跟踪 Java 中的代码。jconsole是JDK自带监控工具,只需要找到 JDK 安装路径,打开 bin 文件夹,双击jconsole即可。0、监控前的准备将代码写入tomcat/bin/catalina.sh CATA...
分类:
编程语言 时间:
2014-07-31 19:46:17
阅读次数:
247
文中通过最简单的一个例子来demo下这jvm对象分配和回收的整个过程,代码很短,很简单,希望剖析的细一点,包括每一步操作后对象的分配和回收对内存堆产生的影响。设定上包括对堆中年轻代(年轻代中eden区和survivor区)、年老代大小的设定,以及设置阈值控制年轻代到年老代的晋升。
分类:
其他好文 时间:
2014-07-25 18:54:02
阅读次数:
352
客户反映系统越用越慢,重启服务器后段时间内系统恢复正常 老年代 垃圾回收不了。 full gc 每分钟执行40次左右。 开始以为是内存泄漏,导出jvm内存快照 快照中可以看到线程池里有问题。但是看不出具体的问题原因 ...
分类:
其他好文 时间:
2014-07-25 00:04:44
阅读次数:
379
Java虚拟机在执行Java程序的过程中会将其管理的内存划分为若干个不同的数据区域,这些区域有各自的用途,及创建和销毁的时间,有些区域随虚拟机进程的启动而存在,有些区域则是依赖用户线程的启动和结束来建立和销毁。...
分类:
编程语言 时间:
2014-07-08 15:59:41
阅读次数:
204
1、top
查看系统负载情况,load average
CPU使用情况,按1查看每个CPU的使用情况
shift+h 查看每个线程的情况
2、free -m
按兆为单位输出内存的已用,未用,总共等结果
total used free shared buffers cached
Mem:...
分类:
其他好文 时间:
2014-07-02 16:34:55
阅读次数:
287