最近突然遇到个问题:用 idea 跑 Tomcat 服务,不到30分钟 内存就吃完了。用任务管理器查看,发现 java.exe占了10G内存!!
查了各种方法
一、 idea Tomcat 配置
没用!!!
二、idea idea64.exe.vmoptions
安装目录下的 bin 下的 idea64.exe.vmoptions 配置,还是 C:\Users\Administrator.IntelliJIdea2019.1\config 下的 idea64.exe.vmoptions 配置 改成如下
也没用!!
三、jvisualvm.exe 检查
然后打开 jdk/bin的 jvisualvm.exe 监控发现里面的 堆,栈等内存空间也是正常的
着实郁闷,感觉java线程的最大内存完全不由这些配置控制。
四、线程状态检查
后来根据这 篇文章做了排查,发现也不是程序引发的问题。
五、解决
最后是解决了,方法是
打开控制台,执行【 java -Xmx2048m -XX:MaxPermSize=1024m -version】
如此内存是控制住了。
【猜想】:如果没有给JVM 设置内存上限,他会一直跟操作系统申请内存。前面几步都没能设置到位,或者说设置不成功。
补充:java Thread卡死 项目内存一直增长
1.今天项目中出现了一个问题,虚