2012-02-13 76 views

回答

5

你可以使用JConsole輕鬆檢查堆內存大小的分配情況,如果你的系統上正確設置了jre/jdk的路徑,你應該可以從任何地方用命令jconsole啓動它。

用於管理堆內存分配,你可以看看這裏:http://javahowto.blogspot.com/2006/06/6-common-errors-in-setting-java-heap.html

+1

可以給我從linux shell下的命令我可以檢查它 – Amit 2012-02-13 09:28:11

+0

它取決於你在哪裏安裝了你的java,在我的Fedora上它的'/ usr/java/latest/bin',調用的程序是'jconsole',正如我所說,如果你有正確的路徑設置bin目錄,你可以從任何地方執行'jconsole'。 – Kris 2012-02-13 09:30:14

+0

我在問它,因爲我使用遠程服務器,我無法在那裏運行jconsole – Amit 2012-02-13 09:54:28

0

Tomcat使用的堆大小在其配置中定義。

這是你可以檢查和改變它的地方。

如果您不確定保存此配置的位置,我建議您查看Tomcat文檔,其中會解釋所有配置值。

16

Linux上的一個簡單的方法是運行以下命令:

PS英法| grep的tomcat的

查找起點和最大JVM內存:

-Xms1024m -Xmx4096m

在這種情況下,它在啓動時分配1G,最大值爲4G

0

如果您需要更多的服務器信息,但無法以交互方式登錄(或沒有設置GUI或JMX等),您可以在您的POM文件/庫中包含javamelody,它將在主機上創建一個頁面:8080 //使用各種良好的信息進行監控,包括堆大小,GC統計信息和permgen大小。

這不是一個安全的東西讓生產環境中運行 - 如果你一直需要它,至少鎖定它!