在Redhat上,CentOS 6.4只运行了几个进程,使用大约3GB RAM(系统有12GB可用).其中一个进程是WSO2ESB服务器(
java),我们用这些参数启动它:
-xms2048m -Xmx3072m
过了一会儿我们得到一个OutOfMemory异常,但java进程(WSO2ESB)进程甚至没有使用它的3GB.在jconsole中你还可以看到那些参数设置正确(此时Linux Server有大约9GB的可用RAM)
Linux没有给我们配置3 GByte RAM吗?
在完全相同的Windows安装上 – java进程可以使用它的3GB Ram而没有任何问题.
jconsole的屏幕截图,显示堆内存使用量仅在0.3到1.0 GB之间.在OutOfMemory异常时刻堆内存为0.5GB,但是这个过程有3GB可以使用,但它没有……
编辑:添加了java进程的日志:
java.lang.OutOfMemoryError: unable to create new native thread
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。