一個Apache Tomcat的(Atlassian的合流)實例是使用以下Java選項啓動更多的內存:Java中使用超過所分配的內存
JAVA_OPTS="-Xms256m -Xmx512m -XX:MaxPermSize=256m -Djava.awt.headless=true "
但是我看到開機後它很快吃掉通過大多數的1GB的內存在我的虛擬服務器上可用。
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6082 root 19 0 1105m 760m 16m S 0.7 74.2 5:20.51 java
不應該使用-Xmx指定的內存(堆+ PermGen)的總體消耗量嗎?這導致的問題之一是我無法使用關閉腳本關閉服務器,因爲它嘗試產生具有256MB內存的JVM,由於該JVM不可用而失敗。
也許有一些本地內存分配通過JNI或'ByteBuffer's直接分配回事。 –
@Steve Tayor也許......我不知道Confluence是否知道它是否會這樣做。我已經在Confluence論壇發佈了一個問題,但沒有答案。 – vahidg