| 命令输出: robert@robert-ubuntu1410:~$ free             total       used       free     shared    buffers     cached Mem:      2049416    1646480     402936      13280     118596     646288 -/+ buffers/cache:    881596    1167820 Swap:     2095100       1480    2093620 
 内存使用并不只有简单的占用和空闲两个状态,从上面的输出发现里面有buffer和cache的数据,从字面意义上来讲,都是缓存,那么弄清楚缓存什么数据才能有效的区分这两种缓存。 从上面命令的输出,我们可以看到,Buffer 118M, Cache  646M。其实,这两个内存区域都是用来缓存磁盘数据的,只不过缓存的数据是不同的: 
    buffers一般都不太大,在一个通用的Linux系统中,一般都是在几十到几百M字节,用于存储磁盘块设备的元数据,比如哪些块属于哪些文件,文件的权限,目录等信息。cached一般会很大, 一般都是G字节以上, 用于存储读写文件的页, 当对一个文件进行读的时候,  会取磁盘文件页到此内存区域,然后从内存进行读取,当写入一个文件,会先写到此缓存,并将相关的页面标记为”dirty”。 buffers用于存储元数据,一般占用的空间不大,对它的关注也不多,cached一般会很大,随着读写磁盘的多少而自动的增加而减少,这也取决于物理内存是否够用,如果应用使用物理内存较多,操作系统会适当的缩小cached来保证用户进程对内存的需要。 2、pmap 此命令用来报告进程占用内存的详细情况,可以用来查出某些内存瓶颈问题的根源原因。 使用方式: pmap -d 2862 
 命令输出: robert@robert-ubuntu1410:~$ pmap -d 2862 2862:  java -server -Xms512m -Xmx512m -Xmn128m -XX:PermSize=128m -Xss256k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=60 -verbose:gc -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -XX:+PrintGCDetails -Xloggc:./logs/gc.log -cp /home/robert/working/workspace/vesta-id-generator/releases/vesta-id-generator-0.0.1-release/bin/vesta-rest-0.0.1/extlib -jar ./lib/vesta-rest-0.0. Address           Kbytes Mode  Offset           Device    Mapping 0000000008048000       4 r-x-- 0000000000000000 008:00001 java 0000000008049000       4 rw--- 0000000000000000 008:00001 java 000000000a017000     872 rw--- 0000000000000000 000:00000   [ anon ] 00000000be800000     896 rw--- 0000000000000000 000:00000   [ anon ] 00000000be8e0000     128 ----- 0000000000000000 000:00000   [ anon ] 00000000be900000    1920 rw--- 0000000000000000 000:00000   [ anon ] 00000000beae0000     128 ----- 0000000000000000 000:00000   [ anon ] 00000000beb00000     284 rw--- 0000000000000000 000:00000   [ anon ] ...... 
 这个命令显示比较底层的进程模块占用内存的信息,并且可以打印内存的起止地址等,用于定位深层次JVM或者操作系统的内存问题。 04.CPU使用情况监控命令 1、vmstat 此命令显示关于内核线程、虚拟内存、磁盘IO、陷阱和CPU占用率的统计信息。 使用方式: vmstat 
 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |