使用Node.js实现守护进程

写一个一直运行永远不挂掉的程序是一件很难的事儿,至少一次性写成很难。但是为了不因为程序挂掉而耽误时间我们往往需要一个守护进程来看着程序是否挂掉,如果挂掉那么将程序重启,重启的同时还要收集挂掉的原因,这样我们的程序才会越来越健壮。
 
今天我遇到了这样的问题,如下是我使用Node.Js实现的一个守护进程,

===================================================

Node.js 的详细介绍请点这里
Node.js 的下载地址请点这里

相关阅读

Node.Js入门[PDF+相关代码]

Node.js入门开发指南中文版

Node.js安装与配置

Ubuntu 编译安装Node.js

===================================================

var spawn = require('child_process').spawn;

function start(){
    nw = spawn('./nw', ['book']);
 
    nw.on('close',function(code, signal){
        nw.kill(signal);
        nw = start();
    });
    nw.on('error',function(code, signal){
        nw.kill(signal);
        nw = start();
    });
    return nw;
};

start();

此端代码将调运外部的nw命令,当子进程退出或者出错的时候将子进程重启,程序写的简陋了些,仅仅提供一个思想。

另外我们知道,我们的程序往往是有状态的。比如我们写一段程序处理数据,如果程序重启那么需要能继续上一次处理的位置继续处理。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/67bc5e17df0c6da82a0e2ec4097e9a75.html