1.物理内存不够 执行 du -h --max-depth=1 命令,看具体哪个文件夹占用内存过高,一般是日志,删除即可。 2.运行内存不够 2.1 top 命令 看内存占用情况 若buff/cache占用过高,则执行以下命令清缓存(需ROOT权限) echo 1 > /proc/sys/vm/drop_caches:表示清除pagecache。 echo 2 > /proc/sys/vm/drop_caches:表示清除回收slab分配器中的对象(包括目录项缓存和inode缓存)。slab分配器是内核中管理内存的一种机制,其中很多缓存数据实现都是用的pagecache。 echo 3 > /proc/sys/vm/drop_caches:表示清除pagecache和slab分配器中的缓存对象。
2.2
tomcat占用内存过高,可修改 tomcat目录/bin/catalina.sh 文件,增加一下配置 JAVA_OPTS="-Xms512m -Xmx512m -Xmn256m" (设置要小一点,设置为512m,实际可达1G左右)
jar占用过高,启动时增加限制
nohup java -jar -Xms512m -Xmx512m -Xmn512m $server --spring.profiles.active=test >./logs/$server.log 2>&1 &
查看内存占用top10
ps auxw|head -1;ps auxw|sort -rn -k3|head -10