`
李俊良
  • 浏览: 140931 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

nodejs 写守护进程

 
阅读更多

 

 

本来用的是forever来处理守护进程的问题

 

但是过程中发现forever对于mysql数据库连接中断的情况处理不好

 

所以只能效仿其他语言的守护进程模式,感觉挺方便的

 

源码如下

 

var spawn = require('child_process').spawn,
	server = null;


function startServer(){
	console.log('restart server');
	server = spawn('node',['app.js']);
	console.log('node js pid is '+server.pid);
    server.on('close',function(code,signal){
    	server.kill(signal);
    	server = startServer();
    });
    server.on('error',function(code,signal){
    	server.kill(signal);
    	server = startServer();
    });
	return server;
};

startServer();

 

发现其实用nodejs写守护进程挺简单的

貌似有点像erlang的OTP模式

0
2
分享到:
评论

相关推荐

    nodejs守护进程

    此守护进程实时监控nodejs程序是否崩溃,如果崩溃则自动重启,并将崩溃进行进行保留。已经经过测试稳定运行。后记,此程序由于没有限制控制台的行数目,所以控制台中的打印信息会无限增加,所以随着打印信息的增长会...

    Node.js-dynsdjs采用NodeJS编写的简单DNS服务器守护进程

    dynsdjs 采用NodeJS编写的简单DNS服务器守护进程

    lncli-web, 在 nodejs/Angular 中,编写了lnd守护进程的轻量级网络客户端.zip

    lncli-web, 在 nodejs/Angular 中,编写了lnd守护进程的轻量级网络客户端 Lnd网络客户端安装要求nodejs/npm过程从 Lnd Web客户端git库获取源:git clone https://github.com/mably/lncli-web.git移动到新创建的目

    Nodejs进程管理模块forever详解

    forever是一个简单的命令式nodejs的守护进程,能够启动,停止,重启App应用。forever完全基于命令行操作,在forever进程之下,创建node的子进程,通过monitor监控node子进程的运行情况,一旦文件更新,或者进程挂掉...

    nodejs基础知识

    Nodejs 介绍 Nodejs 安装 NVM 版本管理器 代码的编写及运行 模块 热部署工具 守护 Node 进程 Nodejs 网站

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

    主要介绍了node.js应用后台守护进程管理器Forever安装和使用实例,forever可以看做是一个nodejs的守护进程,能够启动,停止,重启我们的app应用,需要的朋友可以参考下

    使用forever管理nodejs应用教程

    forever可以看做是一个nodejs的守护进程,能够启动,停止,重启我们的app应用。官方的说明是说: 代码如下:A simple CLI tool for ensuring that a given script runs continuously (i.e. forever).// 一个用来持续...

    nodeJS进程管理器pm2的使用

    PM2是开源的基于Nodejs的进程管理器,包括守护进程,监控,日志的一整套完整的功能,基本是Nodejs应用程序不二的守护进程选择,事实上它并不仅仅可以启动Nodejs的程序,只要是一般的脚本的程序它同样可以胜任。...

    beanmaster:nodejs beantalk 控制台

    守护进程 您可以作为守护程序服务器启动: beanmaster start 以端口号( -p或--port )开头: beanmaster start --port 5000 停止服务器守护进程: beanmaster stop 重新启动服务器守护进程: beanmaster ...

    pi-blaster.js, NodeJS模块控制 pi blaster.zip

    pi-blaster.js, NodeJS模块控制 pi blaster pi-blaster.jsblaster守护进程的NodeJS库。安装确保你的树莓派 上安装了 node 和 npm 。安装守护进程( 指令 ) 。最后安装 pi-blaster.js:npm install pi-bl

    birdbgp:允许您通过其 UNIX 套接字与 Bird BGP 守护进程对话的 NodeJS 模块

    鸟 BGP 守护进程的 NodeJS 接口 要求 节点 本地跑的鸟 安装 在您的项目目录中使用 NPM: npm install birdbgp 在node_modules目录中使用 GIT: git clone https://www.github.com/jeffwalter/birdbgp.git 例子 ...

    NodeJs的CronTabRobCron.zip

    通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。 RobCron是一个NODEJS版本的CRONTAB,弥补了crontab的一些不足,例如,日志,报警...

    canoed:Canoe Nano 钱包的守护进程,用 Nodejs 编写

    不再维护Canoe 没有维护,带有二进制下载的 Canoe 网站不再存在,这个钱包后端也没有运行。 域“getcanoe.io”将不会在 2021 年底续订。这意味着不能再使用 Canoe,但如果您更早使用 Canoe,您可以轻松地将您的种子...

    NodeJS-server-manager:在服务器上托管多个 NodeJS 应用程序,内置反向代理

    因此,为了托管我的应用程序,我通常会在 Linux 虚拟服务器上创建一个守护进程,但为了维护,这并不方便。 所以,我正在开发这个应用程序来帮助像我这样的人轻松托管大量 NodeJS 应用程序。(fr) 简历Je suis très ...

    Nodejs-Stripe-Sample

    Nodejs条带样本入门先决条件 > = v0.12.0 ( npm install --global bower ) ,然后gem install sass ( npm install --global grunt-cli ) 与mongod运行一个守护进程发展在./client/app/purchase/puchase....

    Olmo:Nodejs mongodb 护照

    斯托克奥尔莫 Nodejs mongodb 通行证 1- 启动 mongod 2- npm 安装 3- npm 开始享受 护照蒙戈 此存储库用作基本 Node.... 这意味着如果你在本地安装了 mongo,你需要做的就是正确配置 db.js 文件并运行 mongod 守护进程

    nodeThermostat:使用 ds18x20 温度计的 nodeJs 恒温器

    thermRonStat java 守护进程(见我的 GitHub 项目)节点 npm 安装 npm install -g express npm install -g bower npm install -g nodemon npm install 配置 使用 ds18x20 的编辑 relays.properties 的 ID 编辑 ...

    nodejs-flash-socket-policy:一个简单的 node.js 闪存套接字策略服务器

    这应该使用 Forever 作为守护进程运行。 这很有用,因此服务器端应用程序不需要处理策略请求。 在大多数 unix 环境中,低于 1000 的端口将需要 root 权限。 Adobe 的套接字策略默认使用端口 843。您可以使用 sudo ...

    nodejs-contagious:一对多inotify事件驱动的异步文件系统同步守护程序

    异步特性使rsync任务可以串联完成,而不会中断inotify观察程序进程,从而使其在多个服务器之间高效同步大量文件。 特征 一对多复制 基于Rsync SSH密钥的复制 递归路径观察 多个路径位置 排除模式 用例 创建该守护...

Global site tag (gtag.js) - Google Analytics