[英]Max Heap Size for Tomcat 6 on 64 bit CentOs?
我在運行CentOS 5.4的大型EC2實例上運行tomcat 6實例。 該盒子有7.5GB的RAM,專用於運行tomcat。
我試圖給它的盒子6GB的RAM用於它的最大堆。 但是我一直收到這個錯誤:
Invalid maximum heap size: -Xmx6144m
The specified size exceeds the maximum representable size.
當我丟棄我給它的RAM量時,我開始得到這個錯誤:
Error occurred during initialization of VM
Could not reserve enough space for object heap
即使應用程序運行(使用xmx3000m),當我免費運行時,我有這個金額免費:
[tomcat@producer1:/usr/share/tomcat/logs] $free
total used free shared buffers cached
Mem: 7864320 1512736 6351584 0 179948 702352
-/+ buffers/cache: 630436 7233884
Swap: 0 0 0
我能給予的最多是3000米。 這似乎不合理地小。 有人有主意嗎? 謝謝
你有64位JDK安裝? 如果您使用的是32位JDK,則最大可以訪問4GB(理論上)。 當你計划6GB時,你需要64位JDK。 除此之外,因為你有7.5G,6GB是緊的沒有。 CentOS需要一些內核用於內核,處理其他服務,SWAP內存。
因此,通過從5G開始增加堆大小來進行試驗和錯誤。 JDK需要超出堆的額外內存,如permgenspace(通常為128M - 512M,具體取決於您擁有的庫/類加載器的數量)
請參閱: http : //benjchristensen.com/2007/02/16/32-bit-versus-64-bit-jdk-memory-usage/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.