开机自启
安装依赖 npm i -S node-windows
写完后用node运行
const name = 'Node-ws';//项目名称
let Service = require('node-windows').Service;
let EventLogger = require('node-windows').EventLogger;
let log = new EventLogger(name);
let svc = new Service({
name,//服务名称
description: 'ws的服务器',
script: require('path').join(__dirname,'start.js'),//要执行的node文件
wait: 2,//程序重启的时间间隔
grow: .5, //程序重启的时间增长值
maxRetries: 40 //60秒内最大重启次数
});
svc.on('install',function(){
svc.start();
log.info('install complete.');
});
svc.on('uninstall',function(){
log.info('Uninstall complete.');
log.warn('The service exists: ',svc.exists);
});
svc.on('alreadyinstalled',()=>{
log.error('This service is already installed.');
});
//再次运行取消开机自启
if(svc.exists) return svc.uninstall();
svc.install();
报错重启
每次启动这个文件,不要启动app.js
let process = require('child_process');
// let fs = require('fs-extra');
//启动app.js
let ChildProcess = process.fork('./app.js');
ChildProcess.on('exit',function (code) {
console.log('process exits线程退出 + '+code);
// fs.appendFileSync('./log.txt','线程退出');
if(code !== 0){
process.fork('./start.js');
}
});