簡體   English   中英

如何增加 WildFly 的堆內存?

[英]How to increase heap memory for WildFly?

WildFly 8 在帶有 standalone.sh 的 Linux 服務器上啟動。 我注意到服務器啟動時堆內存空間很少。

我需要為服務器和在服務器上運行的應用程序增加堆內存空間。 我該怎么做?

只需編輯bin/standalone.conf ,查找第一次出現的JAVA_OPTS並根據需要更改-Xmx選項。

Linux

bin/standalone.conf

檢查以下行,

JAVA_OPTS

並相應地更改它以滿足您的堆大小需求

-Xms1303m: initial heap size in megabytes
-Xmx1303m: maximum heap size in megabytes

JAVA_OPTS="-Xms1024M -Xmx2048M -XX:MaxPermSize=2048M -XX:MaxHeapSize=2048M"

窗戶

bin/standalone.conf.bat

JAVA_OPTS="-Xms1024M -Xmx2048M -XX:MaxPermSize=2048M -XX:MaxHeapSize=2048M"

現在重新啟動服務器,它將在不提示任何堆大小錯誤的情況下工作。

OS WINDOWS您需要設置standalone.conf.bat

如果wildfly 8與JDK 8一起使用,我們需要添加MaxMetaSpace Size。 例如 JAVA_OPTS="$JAVA_OPTS -XX:MaxMetaspaceSize=256M" 眾所周知,Java 8 不支持 Perm gen 設置。 有關相關信息,請查看Wildfly Heap 問題

我希望它有幫助。

對於托管域,您可以在 domain.xml 或 host.xml 中的jvm中使用heap標記(例如<heap size="64m" max-size="512m"/> )設置它(取決於您要尋址的范圍)。

我正在運行 Eclipse 並且更改“bin/standalone.conf”對我不起作用。 在這種情況下,解決方案是在 Eclipse 中打開“服務器”視圖,雙擊 Wildfly 服務器,轉到“打開啟動配置”並在“VM 參數”中進行更改。 無論如何,我對 Wildfly 有點菜鳥,我希望其他用戶可以對比我的信息,我在http://www.nailedtothex.org/roller/kyle/entry/articles-wildfly-jvmparams 中找到了

它適用於 Linux 服務器,但我認為它也適用於 Windows。

來自官方文檔的回答:

對於獨立服務器,您必須在執行$JBOSS_HOME/bin/standalone.sh腳本時將 JVM 設置作為命令行參數傳入,或者通過在$JBOSS_HOME/bin/standalone.conf聲明它們。 (對於 Windows 用戶,要執行的腳本是%JBOSS_HOME%/bin/standalone.bat而 JVM 設置可以在%JBOSS_HOME%/bin/standalone.conf.bat

** 重新啟動服務器以使此更改生效。

除了針對裸機 WildFly 服務器已經說過的內容之外,在 Kubernetes/OpenShift 環境中運行 WildFly 時,JVM 允許的內存量由計算資源約束決定。

請參閱如何在 OpenShift 上配置 JVM 設置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM