node.js应用后台守护进程管理器Forever安装和使用实例


Posted in Javascript onJune 01, 2014

我们不可能直接通过node命令来管理远程站点,这样无法保证网站的可持续运行。我们用Forever来解决这个问题,它可以将NodeJS应用以后台守护进程的方式运行,我们还可以将NodeJS应用设成随系统启动而自动运行。

首先,安装Forever:

npm install forever -gd

这样Forever就安装好了,我们可以直接运行Forever命令:
forever --help
forever start app.js
forever stop app.js

上面命令先查看Forever帮助文件,然后运行app.js,然后停止app.js。我们要让Forever自动运行,先在/etc/init.d目录创建一个文件node,内容如下:
#!/bin/bash
#
# node      Start up node server daemon
#
# chkconfig: 345 85 15
# description: Forever for Node.js
#
PATH=/home/node/0.8.9/bin
DEAMON=/home/ftp/1520/weizt-20120918-tKx/weizt.com/app.js
LOG=/home/hosts_log
PID=/tmp/forever.pid
case "$1" in
    start)
        forever start -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $DEAMON    stop)
        forever stop --pidFile $PID $DEAMON
    stopall)
        forever stopall --pidFile $PID
    restartall)
        forever restartall --pidFile $PID
    reload|restart)
        forever restart -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $DEAMON
    list)
        forever list
    *)
        echo "Usage: /etc.init.d/node {start|stop|restart|reload|stopall|restartall|list}"
        exit 1
esac
exit 0

以上代码是我在本地虚拟机的配置,根据实际情况修改相关参数,主要是DEAMON的路径参数,赋予该文件可执行权限,并运行chkconfig添加自动运行:
chmod 755 /etc/init.d/node
chkconfig /etc/init.d/node on

reboot重启系统,通过浏览器进入网站可发现,该NodeJS已经可自动运行了,剩下的工作,就是好好研究NodeJS、Express和AngularJS,做一个真正属于自己的应用!
Javascript 相关文章推荐
jQuery textarea的长度进行验证
May 06 Javascript
JavaScript 定义function的三种方式小结
Oct 16 Javascript
jquery lazyload延迟加载技术的实现原理分析
Jan 24 Javascript
jq实现酷炫的鼠标经过图片翻滚效果
Mar 12 Javascript
JS实现距离上次刷新已过多少秒示例
May 23 Javascript
jquery图片滚动放大代码分享(2)
Aug 28 Javascript
js实现鼠标点击左上角滑动菜单效果代码
Sep 06 Javascript
两种方法解决javascript url post 特殊字符转义 + & #
Apr 13 Javascript
浅谈angular.copy() 深拷贝
Sep 14 Javascript
详解vue axios二次封装
Jul 22 Javascript
微信小程序设置全局请求URL及封装wx.request请求操作示例
Apr 02 Javascript
一文快速详解前端框架 Vue 最强大的功能
May 21 Javascript
node.js入门教程
Jun 01 #Javascript
什么是Node.js?Node.js详细介绍
Jun 01 #Javascript
基于iframe实现类似于ajax的页面无刷新
May 31 #Javascript
通过Jquery的Ajax方法读取将table转换为Json
May 31 #Javascript
jQuery移除元素自动解绑事件实现思路及代码
May 31 #Javascript
jQuery操作select下拉框的text值和value值的方法
May 31 #Javascript
js中的for如何实现foreach中的遍历
May 31 #Javascript
You might like
smarty实例教程
2006/11/19 PHP
PHP实现数组递归转义的方法
2014/08/28 PHP
PHP生成可点击刷新的验证码简单示例
2016/05/13 PHP
ImageFlow可鼠标控制图片滚动
2008/01/30 Javascript
番茄的表单验证类代码修改版
2008/07/18 Javascript
jQuery 文本框得失焦点的简单实例
2014/02/19 Javascript
JavaScript从数组中删除指定值元素的方法
2015/03/18 Javascript
jQuery前端开发35个小技巧
2016/05/24 Javascript
浅谈JS正则表达式的RegExp对象和括号的使用
2016/07/28 Javascript
Listloading.js移动端上拉下拉刷新组件
2016/08/04 Javascript
JS回调函数简单用法示例
2017/02/09 Javascript
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
2017/08/16 Javascript
详解webpack+express多页站点开发
2017/12/22 Javascript
详解vue axios二次封装
2018/07/22 Javascript
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
详解js获取video任意时间的画面截图
2019/04/17 Javascript
vue设置导航栏、侧边栏为公共页面的例子
2019/11/01 Javascript
收藏整理的一些Python常用方法和技巧
2015/05/18 Python
浅谈python字典多键值及重复键值的使用
2016/11/04 Python
Python语言的变量认识及操作方法
2018/02/11 Python
Python贪心算法实例小结
2018/04/22 Python
django的auth认证,authenticate和装饰器功能详解
2019/07/25 Python
Python第三方包PrettyTable安装及用法解析
2020/07/08 Python
html5 的a标签 Href 拨电话的写法
2013/11/04 HTML / CSS
一组SQL面试题
2016/02/15 面试题
Python面试题集
2012/03/08 面试题
应届毕业生的个人自我鉴定
2013/10/24 职场文书
函授大专自我鉴定
2013/11/01 职场文书
护士在校生自荐信
2014/02/01 职场文书
《高尔基和他的儿子》教学反思
2014/04/09 职场文书
三问三解心得体会
2014/09/05 职场文书
庆祝教师节标语
2014/10/09 职场文书
优秀少先队辅导员事迹材料
2014/12/24 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
MYSQL如何查看进程和kill进程
2022/03/13 MySQL
前端canvas中物体边框和控制点的实现示例
2022/08/05 Javascript