为了账号安全,请及时绑定邮箱和手机立即绑定

如何将Node.js作为后台进程运行并永不死亡?

如何将Node.js作为后台进程运行并永不死亡?

杨__羊羊 2019-07-04 18:19:40
如何将Node.js作为后台进程运行并永不死亡?我通过PuTTY SSH连接到Linux服务器。我试图将其作为后台进程运行,如下所示:$ node server.js &然而,在2.5小时后,终端变得不活动,进程停止。不管怎么说,即使终端断开了,我也能保持这个进程的正常运行吗?实际上,我试过nohup,但一旦我关闭PuttySSH终端或拔掉我的互联网,服务器进程立即停止。我在Putty有什么事要做吗?有一个node.js模块,永远..它将作为守护进程服务运行node.js服务器。
查看完整描述

3 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

简单解(如果您对返回流程不感兴趣,只想让它继续运行):

nohup node server.js &

强解(如果进程是交互式的,则允许您重新连接到它):

screen

然后,您可以通过按Ctrl+a+d来分离,然后通过运行screen -r

还可以考虑屏幕的更新替代,tmux。


查看完整回答
反对 回复 2019-07-04
?
慕容708150

TA贡献1831条经验 获得超4个赞

nohup node server.js > /dev/null 2>&1 &

  1. nohup

    指:

    即使在STTY被切断时,也不要终止此进程。

  2. > /dev/null

    指:

    stdout转到/dev/null(它是一个不记录任何输出的虚拟设备)。

  3. 2>&1

    指:

    stderr也会转到stdout(它已经被重定向到/dev/null)。您可以用文件路径替换&1以保存错误日志,例如:2>/tmp/myLog

  4. &

    最后的意思是:

    将此命令作为后台任务运行。


查看完整回答
反对 回复 2019-07-04
  • 3 回答
  • 0 关注
  • 853 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信