Re: [问题] 观察JAVA耗费资源的方法?

楼主: mozzan (mozzan)   2014-04-09 18:29:20
哈 我又来了
我现在是用Visual VM 观察JAVA 程序
这次想问的问题是有关内存计算部分
我附上两张图
(1) http://ppt.cc/KxfU
(2) http://ppt.cc/pKho
第一张图可以看到 Heap Size 约为 470MB
第二章图可以看到 永生代 Size 为 62MB
问题来了
1. 我用ps -Lo pid,ppid,pgid,nlwp,lwp,stat,%mem -p <pid>
来看 %MEM 为 16.7% ,加上free指令,内存耗用约为 675MB
想请问 470 + 62 < 675 ,是因为还有其他未算到的部分吗?
2. 第一张图可以看到 Heap Size 约在 470MB 然后 Used 约在 50 ~ 200MB
这部分感觉 Size 可以再往下降,这样是不是系统就可以多一些内存能用
但这部分跟 JVM 本身的算法有关就是了
3. 第一张图的 1/3 那边有看到 Size 往下降一大部分,但是我在 server实际去查
,照我第一点那样查,发现 Process 也没有释放那些的内存,那那块降下来
的内存跑去哪了??
4. 这是一台webmail process,在下午时候连线较多,我在早上时候观察时,有发现
在 minor gc 的频率较下午高,约5分钟 2~3次,下午大概 5分钟1次,这部分是不是
和 jvm 拥有了较多的 Heap Size 有关,因为 allocate 较多 heap size 所以可以累积
到较多的量再做 GC,这部分似乎是我的 Process 占用内存越飙越高的原因,这边不知道
能不能调整。
感谢阅读,明天继续观察 ヾ(○’▽‘○)ノ
作者: PsMonkey (痞子军团团长)   2014-04-09 19:14:00
GC 是针对 JVM,与 JVM 本身占多少 OS 内存无关是说这个“永生代”的翻译是哪来的阿?
楼主: mozzan (mozzan)   2014-04-09 19:46:00
我印象中是从直达JVM看见的@@

Links booklink

Contact Us: admin [ a t ] ucptt.com