Node.js部署到服务器之后台守护进程管理器Forever

我们不可能直接通过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,做一个真正属于自己的应用!

原文地址:https://www.cnblogs.com/wrpuser/p/8446920.html

时间: 2024-11-02 17:12:39

Node.js部署到服务器之后台守护进程管理器Forever的相关文章

daemonize Unix系统后台守护进程管理软件

在我们的工作中,很多时候都需要在linux中后台运行程序,方法1: nohup & 方法2: daemonize Unix系统后台守护进程管理软件优点:更加正规 后台运?更稳定git clone git://github.com/bmc/daemonize.gitsh configure && make && sudo make install[[email protected] ~]# which daemonize /usr/local/sbin/daemoni

Node.js之HTPP服务一

几乎每门编程语言都会包括网络这块,Node.js也不例外.今天主要是熟悉下Node.js中HTTP服务.其实HTTP模块是相当低层次的,它不提供路由.cookie.缓存等,像Web开发中不会直接使用,但还是要熟悉下,这样也方便以后的学习. 一.统一资源标识符URL 这个是非常常见的,在Node.js中有几种处理. http://user:[email protected]:80/resource/path/?query=string#hash 协议://身份认证@主机名.com:端口/路径/搜索

Node.js发布http服务

Node.js发布http服务 2018-11-09 09:43:03   Visit  0 简单服务 var http = require(\'http\'); http.createServer(function (request, response) { // 发送 HTTP 头部 // HTTP 状态值: 200 : OK // 内容类型: text/plain response.writeHead(200, {\'Content-Type\': \'text/plain\'}); //

实用,Windows后台守护进程iNeuDaemon发布。Linux操作系统下使用使用supervisor

目       录 1.      概述... 1 2.      iNeuDaemon部署... 2 3.      iNeuDaemon配置监控服务项... 3 4.      应用效果... 3  1.   概述 iNeuDaemon是Windows平台后台守护进程,用于监测服务进程,如果出现异常退出.远程运维重新启动等场景,那么可以部署iNeuDaemon后台守护进程,唤醒实时运行的服务. 主要为iNeuOS云操作系统用户提供必要运维方面的工具,以减少人工操作.如果是Linux下应用守护

rsync服务配置流程-守护进程

rsync服务配置流程rsync守护进程服务部署流程: #第一步:检查软件服务是否安装[[email protected] ~]# rpm -qa|grep rsyncrsync-3.0.6-12.el6.x86_64如果rsync软件不存在yum install -y rsync #第二步:编写rsync的配置文件/etc/rsyncd.conf*****rsyncd.conf是rsync服务默认配置文件,但是默认不存在vim /etc/rsyncd.conf#rsync_config #cr

RH124-08 系统服务和守护进程管理

第八章 系统服务和守护进程管理 8.1 了解自启动系统服务 在RHEL7中,系统启动和服务进程都是有systemd管理.这个systemd负责在系统启动或系统运行过程中,激活系统资源,服务守护进程和其他进程. systemd取代了RHEL家族中以往的System V 和 init程序启动系统的做法,它的最终目标是提供更优秀的框架以表示系统服务之间的依赖关系,并以此达到提供系统初始化时服务的并行启动效率,降低shell脚本的使用和系统开销的效果 systemd使用服务单元为基本单位管理系统的启动.

基于OpenResty和Node.js的微服务架构实践

什么是微服务? 传统的单体服务架构是单独服务包,共享代码与数据,开发成本较高,可维护性.伸缩性较差,技术转型.跨语言配合相对困难.而微服务架构强调一个服务负责一项业务,服务可以单独部署,独立进行技术选型和开发,服务间松耦合,服务依赖的数据也独立维护管理.虽然微服务存在部署复杂.运维难度较大.分布式事务控制难.容错要求高等缺点,但总体而言,微服务的优点远大于其复杂性. 微服务架构需要注意哪些问题? 微服务架构,首先考虑客户端与服务端之间的通信问题.有两种解决办法,一是客户端与多个服务端直接进行通信

node.js web实时消息服务器后台推送技术方案---GoEasy

Goeasy, 它是一款第三方推送服务平台,使用它的API可以轻松搞定实时推送!个人感觉goeasy推送更稳定,推送速度快,代码简单易懂上手快浏览器兼容性:GoEasy推送支持websocket 和polling两种连接方式,从而可以支持IE6及其以上的所有版本,同时还支持其它浏览器诸如Firefox, Chrome, Safari 等等.支 持不同的开发语言:   GoEasy推送提供了Restful API接口,无论你的后台程序用的是哪种语言都可以通过RestfulAPI来实现后台实时推送.

node.js部署文档(Linux版)

常用命令 新建项目(需要到该项目文件目录下执行,否则日志会报错) pm2 start bin/www  - i  max  - - name  ijhealth 只开启一个线程 node  bin/www (没有进程守护) 开启项目 pm2  start    项目名称 关闭项目 pm2  stop    项目名称 重启项目 pm2  restart  项目名称 删除项目 pm2  delete  项目名称 列出项目 pm2  list 查看进程详细信息 pm2 show 0  /   pm2