51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 1932|回复: 1
打印 上一主题 下一主题

请问版主,JVM自动增长是何故?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-4-7 09:37:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问版主,JVM自动增长是何故?
咨询个问题:java web项目,系统服务启动后,用Jconsle观察JVM。发现:在无人访问的情况下,JVM堆内存也在不停的增长,大约不到5分钟,自动进行了垃圾回收工作,JVM堆内存回到系统最初的占用情况。因为出现过系统服务宕机的情况,我认为在程序代码中存在内存泄漏的情况。因此特请问版主,这种无人访问的情况下JVM堆内存自行增长是否合理?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-7-5 20:37:52 | 只看该作者
JVM自动增长,是不合理的。

堆内存的变化明显,且逐渐增长,说明Java虚拟机在进行频繁的垃圾回收工作,频繁的垃圾回收,也会导致你的CPU占用率的不断上升。

导致这种现象的原因之一是JAVA虚拟机的内存配置不合理,需要调优,调整垃圾回收机制。二,是代码存在问题,开发人员忽略了性能的因素,临时对象过多,所以大量内存被占用,JAVA虚拟机因此频繁进行垃圾回收,从而释放不在使用的内存。

你可以先这几点入手:
1,优化代码
2,调整JAVA虚拟机内存相关参数和垃圾回收机制
3,配置应用服务器实例,组成Cluser,缓解垃圾回收频率,降低CPU的消耗能力。

good luck!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-3 18:06 , Processed in 0.067681 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表