如何增加 JAVA 堆大小?

如何增加 JAVA 堆大小?

我需要增加默认的 Java 堆大小来获得OpenNMS 链接服务运行顺利,而且幸运的是,即使在服务器负载最大的时候,我在任何给定时间都有总安装内存的 4/5 可用。但是 Java 的性能还没有达到最佳水平。因此,我需要增加默认的 Java 堆大小。

谁能告诉我怎么做?

我正在使用 Ubuntu 12.04 lts,安装的总内存为 16 GB,其中通常使用 2GB 到 4GB。

我已经检查了以下问题,但它们并没有帮助我解决我的问题。

  1. 如何增加分配给 java 的内存?java.lang.OutOfMemoryError:Java 堆空间

  2. 比较虚拟内存大小与常驻内存大小

  3. 如何增加分配给 java 的内存?java.lang.OutOfMemoryError:Java 堆空间

如需任何其他详细信息,请随意编辑或评论。

答案1

您可以使用java -Xmx4096m它将堆设置为 4 GB。

然后您可以export _JAVA_OPTIONS=-Xmx4096m通过它们的(.bashrc,.zshrc)文件将其添加到您的shell中。

答案2

嗯……Java 性能不一定与堆大小有关。通过增加最大大小,您可以防止内存不足错误(还有其他因素会生成此 Java 错误)。

如果将预分配的堆设置为最大大小,则唯一的效率是通过减少增加堆栈内存大小的调用次数来获得。

嗯...我猜它也可能会稍微减慢垃圾收集器的速度,因为它不必像较小的堆那样快速做出反应。

上述两种堆大小调整均可在 java 命令行上进行。

相关内容