簡體   English   中英

64位CentOs上Tomcat 6的最大堆大小?

[英]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.

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