当前位置:   article > 正文

【Linux】通过分配虚拟内存的方式来解决因内存不够而导致部署的项目自动挂掉_linux服务器上总是因为内存不足服务直接挂掉怎么解决

linux服务器上总是因为内存不足服务直接挂掉怎么解决

多个 jar 包项目部署在同一台服务器上,当服务器配置低,内存不足时,有可能出现 nohup java -jar 启动的进程就莫名其妙挂掉的问题。

解决方式:

第一种方法:进行JVM调优可以改善这种情况,但是项目太多,我们的个人服务器配置实在太低,仍然无法解决此问题,这里不做讨论了。

第二种方法:我们可以通过分配虚拟内存的方式解决,操作如下:

(1)查看当前内存使用情况

free -m
  • 1

在这里插入图片描述

(2)划分虚拟内存分区(大小为2G),执行命令会卡一小会无响应

dd if=/dev/zero of=/var/swap bs=1024 count=2048000
  • 1

在这里插入图片描述

(3)分别执行下面两条命令: 将分区设置为SWAP分区,并将其设置为有效状态

mkswap /var/swap
  • 1
swapon /var/swap
  • 1

在这里插入图片描述

(4)再次查看内存使用情况

free -m
  • 1

在这里插入图片描述

Swap 虚拟内存中已经由 0 变成了 1999,说明我们已经成功分配了大约 2G 的虚拟内存。接下来启动多个项目看一下能不能正常使用Swap的虚拟内存

。。。。 启动项目中 。。。。

(5)启动完项目后,执行: ps aux | grep java 查看所有服务,看看是否还会再挂,一般就不会了。

(6)这样配置,每次服务器重启,就没了,所以设置开机自动挂载 Swap 分区,编辑文件 /etc/fstab,在下面加入:/var/swap  swap  swap  default  0 0

vim /etc/fstab
  • 1
/var/swap    swap    swap    default        0 0
  • 1

在这里插入图片描述

最后保存即可

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/940896
推荐阅读
相关标签
  

闽ICP备14008679号