返回信息流现在在实验室部署一个Java项目,环境是Tomcat7+jdk1.7,用的默认的Hotspot虚拟机。我在Tomcat的catalina.sh里配置了堆区800M,持久带100M,可实际通过top命令的res字段看,jvm使用了内存1.5G。因为系统只有2G内存,所以jvm经常被oomkiller选中杀死。很郁闷,我主要是用了process.getruntime.exec执行外部命令,难道这样会产生jvm无法控制的内存泄露?求大神帮我解释一下问题的原因。先行谢过!
这是一条镜像帖。来源:北邮人论坛 / java / #54443同步于 2016/12/25
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
[科学已死 玄学当道] JVM内存问题
kakakovic
2016/12/25镜像同步31 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
我说,,你应该通过工具看一下哪里在哪里不断的进行了gc,,然后根据那个来修改,这么看谁能看出来,,好久之前弄过,,楼主加油我只记得这么多了
【 在 kakakovic (kakakovic) 的大作中提到: 】
: 顶顶顶
通过『我邮2.0』发布
想当年写了个java项目没自信看内存,验收时直接内存占用上90%……
【 在 kakakovic (kakakovic) 的大作中提到: 】
: 现在在实验室部署一个Java项目,环境是Tomcat7+jdk1.7,用的默认的Hotspot虚拟机。我在Tomcat的catalina.sh里配置了堆区800...
: --
Java内存使用分两种,一个是堆内存,另外一个是本地堆内存。你800M是堆堆内存的限制,对于本地堆内存,Java是不做限制的,你看看你是不是用了什么JNI之类的
发自「贵邮」