阿里云部署SpringBoot项目启动后被杀进程的问题

阿里云部署SpringBoot项目启动后被杀进程的问题

最近部署在公司虚拟主机上的SpringBoot项目频繁被杀,这个虚拟主机是个杂货铺,部署着各种项目,时间跨度还大,不同的人负责,个人自扫门前雪,不管他人瓦上霜,乱的没人能说清楚,头疼。首先排除了磁盘不足,后来同事发现可用内存不足,分析原因发现是linux系统内存分配问题,阿里云服务器默认没有分配swap空间大小的。

知道原因就好办了,为系统增加swap空间。过程做个笔记。

步骤:

1.创建swap 分区文件

dd if=/dev/zero of=/home/swap bs=1024 count=1024000

意思是有1024个block,每个block为1k,文件的大小count乘以bs共1GB,这个空间大小根据项目及主机磁盘空间情况自己定义。

2.将分区文件变成swap分区

/sbin/mkswap /home/swap

3.启用swap分区

/sbin/swapon /home/swap

启用后,可以查看swap分区情况:

free -m

4.设置开机自动挂载

这一步是为了避免系统重启后swap分区会还原

也很简单,修改/etc/fstab文件,增加一行

/home/swap swap swap defaults 0 0

  1. SWAP分区的使用原则

在Linux系统中,可以通过查看/proc/sys/vm/swappiness内容的值来确定系统对SWAP分区的使用原则。当swappiness内容的值为0时,表示最大限度地使用物理内存,物理内存使用完毕后,才会使用SWAP分区。当swappiness内容的值为100时,表示积极地使用SWAP分区,并且把内存中的数据及时地置换到SWAP分区。

查看:cat /proc/sys/vm/swappiness

修改:sysctl -w vm.swappiness=60

相关推荐
Database_Cool_4 小时前
AI Agent 长期记忆怎么存?阿里云 PolarDB-X 对接 Mem0 记忆框架实践
数据库·阿里云
Database_Cool_5 小时前
阿里云 Lindorm vs InfluxDB vs TDengine:时序数据库全维度对比,多模融合降本 90%
阿里云·时序数据库·tdengine
行业研究员6 小时前
AI原生的商城智能经营平台合作商推荐:腾讯云Mall
云计算·腾讯云·ai-native
故乡de云7 小时前
AWS 更换信用卡完整教程:绑定新卡、切换默认支付方式与扣款失败排查
云计算·aws
酷可达拉斯8 小时前
Linux操作系统-shell编程(0)
linux·运维·服务器·python·云计算
ManageEngine卓豪8 小时前
阿里云ECS/RDS/OSS性能故障全链路排查指南:从单服务根因定位到跨服务连锁故障分析
阿里云·oss·ecs·rds·性能故障排查
霸道流氓气质8 小时前
SpringBoot中集成阿里云消息队列 ApsaraMQ for RabbitMQ 全面指南
spring boot·阿里云·java-rabbitmq
huijingjituan9 小时前
三方聊天软件工具定制开发|打造企业级智能通讯平台
数据库·安全·阿里云·实时互动·腾讯云
国科安芯9 小时前
空间机电一体化:AS32S601型抗辐射MCU在卫星推进与执行机构控制中的关键技术研究
单片机·嵌入式硬件·物联网·机器人·云计算