如何减少java堆大小?

时间:2014-05-12 12:57:12

标签: java memory jboss

我有一个在JBoss上运行的应用。服务器的RAM太低(大约2GB),所以我需要减少Java堆大小。此外,我有两个版本的Java:系统版本(1.4.2)和1.7.0仅适用于JBoss 7。 那么,如何正确地减少Java堆大小呢?

3 个答案:

答案 0 :(得分:4)

有两个标志来控制堆大小:-Xms128m将以128兆开始启动堆,而-Xmx1g控制最大大小(此处,它将设置为1 gig)。 / p>

答案 1 :(得分:1)

您可以在jboss启动文件中更改堆大小,编辑bat或sh文件并搜索-Xms并将其更改为所需的大小。

答案 2 :(得分:1)

  

在大多数32位Sun的JVM中,Java中堆空间的默认大小为128MB,64位系统上堆大小参数的默认值增加了大约30%。

您可以使用

java -XX:+PrintFlagsFinal -version | grep HeapSize

检查您的默认尺寸。

Read more

您可以使用JVM选项-Xms和-Xmx更改堆空间的大小。 Xms表示Heap的起始大小,而-Xmx表示Java中Heap的最大大小 您可以使用 java -Xms1024M -Xmx2048M YourApp

或者通过搜索“Sun JVM内存分配池参数”并更改JAVA_OPTS行来编辑/bin/run.sh|exe文件:

  

设置JAVA_OPTS =%JAVA_OPTS%-server -Xms1152m -Xmx1152m -XX:MaxPermSize = 128m   -XX:MaxNewSize =128米