如何增加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 命令列上進行。

相關內容