分享

hdfs 内存增加

hadoop小象 发表于 2014-12-10 16:45:55 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 8 13992
  在使用hdfs fs -ls /命令时,报java.lang.OutputMemoryError: GC overhead limit exceed异常,显然是内存不够,大神们怎么解决呢?

已有(8)人评论

跳转到指定楼层
muyannian 发表于 2014-12-10 17:15:23


加载了太多资源到内存,gc时间消耗的较多。
解决这种问题两种方法是,增加参数,-XX:-UseGCOverheadLimit,关闭这个特性,同时增加heap大小,-Xmx1024m。

回复

使用道具 举报

muyannian 发表于 2014-12-10 17:16:41
回复

使用道具 举报

hadoop小象 发表于 2014-12-10 17:17:42
muyannian 发表于 2014-12-10 17:15
加载了太多资源到内存,gc时间消耗的较多。
解决这种问题两种方法是,增加参数,-XX:-UseGCOverheadLim ...

能不能说说具体怎么做呀,网上说使用 Java -xms1024m -Xmx4096,可我那没法使用这命令呀,谢谢
回复

使用道具 举报

hadoop小象 发表于 2014-12-11 09:31:29
muyannian 发表于 2014-12-10 17:15
加载了太多资源到内存,gc时间消耗的较多。
解决这种问题两种方法是,增加参数,-XX:-UseGCOverheadLim ...

我在hadoop-env.sh中修改heapsize,增加到3000,发现解决不了问题,另一个useGCOverheadlimt在哪修改呢,谢谢
回复

使用道具 举报

muyannian 发表于 2014-12-11 12:36:24
hadoop小象 发表于 2014-12-11 09:31
我在hadoop-env.sh中修改heapsize,增加到3000,发现解决不了问题,另一个useGCOverheadlimt在哪修改呢, ...
在jvm启动参数中添加 "-XX:-UseGCOverheadLimit",该参数在JDK6中默认启用("-XX:+UseGCOverheadLimit")。
回复

使用道具 举报

muyannian 发表于 2014-12-11 12:38:36
hadoop小象 发表于 2014-12-11 09:31
我在hadoop-env.sh中修改heapsize,增加到3000,发现解决不了问题,另一个useGCOverheadlimt在哪修改呢, ...
下面例子,可参考 

JAVA_OPTS='-Xms512m -Xmx4096m -XX:MaxPermSize=128m -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC'

回复

使用道具 举报

hadoop小象 发表于 2014-12-12 08:48:52
muyannian 发表于 2014-12-11 12:38
下面例子,可参考 

JAVA_OPTS='-Xms512m -Xmx4096m -XX:MaxPermSize=128m -XX:-UseGCOverheadLimit - ...

嗯,搞定了,谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条