nodejs 后台服务启动


最近一个项目微信小程序,需要写个小型的后端程序处理聊天通讯记录保存,主要是功能是组建群聊天室,所以用node写了个websocket服务...

但是终端连接到服务器,运行 node server.js, 退出终端之后,服务就停止运行了。
原以为 node server.js & 或者 nohup node server.js >/dev/null 2>&1 & 能轻松的解决,后来发现完全不是那么回事..........
谷歌了一番资料,了解到

nodejs一般是当成一条用户命令执行的,当用户断开客户连接,运用也就停了,很烦人。如何让nodejs应用当成服务,在后台执行呢?

最后使用 forever 包搞定,解决方案如下:

sudo npm install -g forever --registry=http://registry.cnpmjs.org
forever start 你的脚本文件(如server.js)
forever list 查看所有 forever 运行的进程
forever stop uid 停止运行指定 uid 的进程

 它能做更多的事情,比如分别记录输出和错误日志,比如可以在js中作为api使用。通过以下(我的是ubutun系统)也可以正常安装

$ sudo npm install forever -g #安装 $ forever start app.js #启动 $ forever stop app.js #关闭 $ forever start -l forever.log -o out.log -e err.log app.js #输出日志和错误

命令语法及使用 https://github.com/nodejitsu/forever


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM