Node服务在断开SSH后停止运行解决方案(创建守护进程)

本文介绍了一种有效解决Node.js应用程序在SSH断开后进程停止的方法。作者发现常规方法如nohup、forever及npm start &无法持久运行进程,最终采用pm2作为进程管理器,确保Node应用即使在SSH断开后也能继续运行。pm2不仅提供了负载均衡,还能充分利用服务器的所有CPU资源,保证进程永不终止。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我今天来单位发现ElasticSearch-Head挂了,基本上每天早上来上班都是挂掉的,我tm就怀疑这不是一个偶然现象,排查了一番发现是node进程在断开SSH之后就会停止运行了,网上的方法都试过了,有用nohup的,有用forever的,有直接写npm start &的,然而都并没有什么卵用,怀疑都是没经过大脑直接抄袭别人的文章。

有效的解决方案是在Linux中安装pm2来管理node进程,那到底pm2是干嘛的?网上找了一下介绍:pm2 是一个带有负载均衡功能的Node应用的进程管理器。可以把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载。大致意思就是和linux守护进程一样能一直运行node程序,下面我们来安装一下

npm install -g pm2
ln -s /data/node-v12.4.0-linux-x64/bin/pm2 /usr/bin/pm2

可以通过pm2 -v 验证,用法就是下面这几种

pm2 start npm -- run start
pm2 list
pm2 stop 
pm2 restart 
pm2 delete

通过pm2来运行你的npm命令就可以保证node程序不会因为SSH断开挂掉了。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

地表最强菜鸡

你的鼓励将是我创作最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值