关于JProfiler监测内存占用问题!!

07-10-27 ironpearl
JBOSS中有个WEB应用,我用JProfier监测内存占用问题.

为什么显示的内存使用情况和WINDOWS的任务管理器显示的内存使用不一致呢??

JProfiler显示的内存使用一直很稳定,保持在80M左右.《Used heap size:75.9 MB》

而windows任务管理器上-->进程-->内存显示200M左右《java.exe PID:2736 CPU:01 内存使用:205,212K》

该应用在服务器上跑了将近10天,JProfiler显示内存使用还是在80M左右波动,而windows任务管理器上显示已达到了400M

PS:论坛怎么上传不了图片

ironpearl
2007-10-30 20:10
怎么没人回复啊???

banq
2007-10-31 11:57
一个操作系统显示内存 一个是显示JVM的内存,不要小看JVM,他其实就是一个跨平台的操作系统,两者能一致吗?

使用JProfiler关键是检查你的应用程序包中有无内存泄漏,也就是实例个数一直增长,还有CPU占据,是否你的应用程序某个一直霸占CPU,那么就要改进。

ironpearl
2007-10-31 16:27
BANQ也许没理解我的意思.

18号通过JProfiler启动的JBOSS,下面是18号和24号对VM Telemetry Views的截图,显示很稳定.可是通过WINDOWS下的任务管理器-->进程,查看java.exe,会一直慢慢增加,从100,000K左右一直增加到300,000K左右,一般会在20天左右,JBOSS就挂掉了,WEB 请求无反应.

ironpearl
2007-10-31 16:39
图片怎么只显示上半截了?

banq
2007-10-31 17:51
>一般会在20天左右,JBOSS就挂掉了,WEB 请求无反应

那就是内存泄漏了,消耗内存,加大客户端并发压力 这样就提早崩溃找到内存泄漏的类

dialyes
2008-08-07 11:03
jvm heap size 只是jvm内存的一部分.

从os角度来看,jvm或者说是java进程占用的内存比jprobe中显示的heap size要大得多!

猜你喜欢