2014-02-17 41 views
0

我在Linux上運行Tomcat 6,並在setenv.sh中設置Xms和Xmx。在啓動Tomcat服務器後,我看不到內存使用量增加了至少在Xms中指定的值。爲什麼Tomcat不保留最小堆空間

啓動之前free -m顯示1500爲空閒內存。

在我的startup.sh我可以看到內存設置。

CATALINA_OPTS: -Xms512m -Xmx1024m 

服務器啓動後free -m顯示1140爲空閒內存。爲什麼空閒內存不會減少至少512m?

jinfo 14064 is showing VM Flags: -Xms512m -Xmx1024m 

jmap -heap is also showing memory settings are applied 

堆配置: MinHeapFreeRatio = 40 MaxHeapFreeRatio = 70 MaxHeapSize = 1073741824(1024.0MB)

有什麼我失蹤?

+0

哪一個IDE你正在使用? – Sarz

+0

我沒有使用任何IDE。這些應用程序已經部署在Linus上的Tomcat上。我只是想增加記憶。 – Parvez

回答

0

免費-m命令

http://www.linuxtoday.com/upload/understanding-free-command-in-linuxunix-130530185004.html

此命令將顯示實際可用RAM。 RAM內存和虛擬內存不同。 實際的初始堆大小和最大堆大小可以通過堆分配 可以通過以下命令進行標識。 添加以下jvm參數-verbose:gc 並重新啓動服務器。一旦服務器重新啓動和初始化後的詳細日誌顯示以下

//屬性名=「maxHeapSize」值=「0x40000000之後」

//屬性名=「initialHeapSize」值=「0x20000000」

將該值轉換爲MB將顯示Xms和Xmx分配。

上面顯示的是下面的命令 的java -Xms512m -Xmx1024M -verbose的片段:GC -version

+0

關於這些差異的很好解釋。 – 2015-05-07 05:33:33

相關問題