tomcat內存溢出

產生的緣由和表現:java

  tomcat默認有一個可用內存,通常爲128M,若是項目較大的狀況下就會出現內存溢出的狀況,具體表現爲項目訪問出現無緣由卡頓或者直接沒法進行訪問,後臺會出現錯誤:Java.lang.OutOfMemoryError:unable to create new native thread at java.lang.Thread.start(native method) at org.apache.catalina.loader.Webapploader.notifyContext……linux

如何處理:apache

  不一樣的狀況處理方式不一樣,分爲,windows下安裝版本、windows下免安裝版本、linux系統下、eclipse中windows

  一、windows下安裝版(未親測,僅供參考):tomcat

    直接雙擊tomcat.exeapp

    

  二、windows下免安裝版本eclipse

    找到tomcat所在目錄下的bin目錄下的catalina.bat文件,在此文件中增長JAVA_OPTS=-Xms512m -Xmx512m -Xss1024k -XX:PermSize=16m -XX:MaxPermSize=128morm

  三、linux下內存溢出server

    參照windows下免安裝tomcat設置方式,只不過修改的文件是catalina.sh文件blog

  四、eclipse中設置tomcat內存參數

    雙擊server下的tomcat,點擊general information下的open launch configuration,打開arguments選項卡,加入以下內容,

    -Xms512M -Xmx1024M -XX:PermSize=256m -XX:MaxPermSize=512m

    也能夠右鍵run、runConfigurations、arguments下打開加入如上參數

  

  參數的含義:

    xms512M:Java虛擬機佔用系統的最小內存爲512M

    Xmx1024M:Java虛擬機佔用系統的最大內存爲512M

    XX:PermSize:最小的棧內存大小(通常報的內存溢出都是由於此參數太小,能夠適當的加大)

    XX:MaxPermSize:最大棧內存大小

相關文章
相關標籤/搜索