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 相关文章推荐
javascript的parseFloat()方法精度问题探讨
Nov 26 Javascript
javascript实现信息的显示和隐藏如注册页面
Dec 03 Javascript
JS实现文字向下滚动完整实例
Feb 06 Javascript
jQuery基于图层模仿五星星评价功能的方法
May 07 Javascript
JavaScript事件类型中焦点、鼠标和滚轮事件详解
Jan 25 Javascript
JavaScript实现显示函数调用堆栈的方法
Apr 21 Javascript
原生js开发的日历插件
Feb 04 Javascript
基于vue2的table分页组件实现方法
Mar 20 Javascript
微信小程序 自定义消息提示框
Aug 06 Javascript
JavaScript寄生组合式继承实例详解
Jan 06 Javascript
小程序组件之仿微信通讯录的实现代码
Sep 12 Javascript
微信小程序如何实现精确的日期时间选择器
Jan 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
新闻分类录入、显示系统
2006/10/09 PHP
用 Composer构建自己的 PHP 框架之基础准备
2014/10/30 PHP
PHP使用pear实现mail发送功能 windows环境下配置pear
2016/04/15 PHP
PHP实现mysqli批量执行多条语句的方法示例
2017/07/22 PHP
PHP获取文件扩展名的常用方法小结【五种方式】
2018/04/27 PHP
php实现微信企业转账功能
2018/10/02 PHP
PHP回调函数简单用法示例
2019/05/08 PHP
js 深拷贝函数
2008/12/04 Javascript
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
Javascript学习笔记之数组的构造函数
2014/11/23 Javascript
jQuery CSS3自定义美化Checkbox实现代码
2016/05/12 Javascript
JS简单实现DIV相对于浏览器固定位置不变的方法
2016/06/17 Javascript
使用JS实现图片展示瀑布流效果(简单实例)
2016/09/06 Javascript
Vue 父子组件、组件间通信
2017/03/08 Javascript
微信小程序如何获取openid及用户信息
2018/01/26 Javascript
js中怎么判断两个字符串相等的实例
2019/01/17 Javascript
Vue+webpack实现懒加载过程解析
2020/02/17 Javascript
vue tab切换,解决echartst图表宽度只有100px的问题
2020/07/19 Javascript
[02:16]卖萌的僵尸 DOTA2神话信使飞僵小宝来袭
2014/03/24 DOTA
python发腾讯微博代码分享
2014/01/10 Python
Python用for循环实现九九乘法表
2018/05/31 Python
Python中偏函数用法示例
2018/06/07 Python
Python实现监控键盘鼠标操作示例【基于pyHook与pythoncom模块】
2018/09/04 Python
Django更新models数据库结构步骤
2020/04/01 Python
缓解脚、腿和背部疼痛:Z-CoiL鞋
2019/03/12 全球购物
介绍一下SQL注入攻击的种类和防范手段
2012/02/18 面试题
公司前台接待岗位职责
2013/12/03 职场文书
企划专员岗位职责
2013/12/09 职场文书
搞笑创意广告语
2014/03/17 职场文书
县级领导干部开展党的群众路线教育实践活动工作汇报
2014/10/25 职场文书
2014年留守儿童工作总结
2014/12/10 职场文书
给老师的感谢信
2015/01/20 职场文书
2007年老电脑安装win11会怎么样? 网友实测win11在老电脑运行良好
2021/11/21 数码科技
Pandas数据结构之Series的使用
2022/03/31 Python
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js
vue项目配置sass及引入外部scss文件
2022/04/14 Vue.js