tomcat 學習

jvm內存模型: java

堆內存(類的實例,數組,new 生成的對象),  棧內存(方法局部變量,方法參數),  靜態內存區(常量,靜態變量,類的元數據,不會被jvm垃圾回收)數組

 

內存溢出tomcat

1,  outOfMemoryError: java  heap  space 異常 服務器

堆內存滿了,好比 jar 文件太多。默認 最小爲 物理內存的 1/64  ,最大爲 1/4 jvm

 

2.  outOfMemoryError: PermGen  space 異常 spa

靜態內存區滿了,加載的類太多了code

 

3. stackOverflowError 異常server

棧滿了,  通常是 死循環,或者遞歸 致使的對象

 

配置tomcat 內存遞歸

 win下 在 catalina.bat  文件裏面 

好比 

set JAVA_OPTS="-server  # 服務器模式
 -Xms256m  # 最新堆內存,不要 超過 80% 的物理內存
-Xmx512m  # 不要超過物理內存,通常爲 物理內存的一半
-XX:MetaspaceSize=128m  # 元空間大小
-XX:MaxMetaspaceSize=256m # 默認無上限 
"

 

以上來自慕課網

相關文章
相關標籤/搜索