解决问题:webrtc后台程序发生未知错误,导致崩溃,不会自动重启
参考文献:blog.csdn.net/wwj256/arti…
全局在线安装forever:npm install forever -g
如果安装完成后,启动服务报错:“forever : 无法加载文件 C:\Users\XXX\AppData\Roaming\npm\forever,因为在此系统上禁止运行脚本”
离线安装forever:在已经安装好forever的计算机上,找到C:\Users\10202\AppData\Roaming该目录下的npm文件夹,拷贝到离线服务器对应目录下C:\Users\Administrator\AppData\Roaming
用forever命令启动后台程序,两种方式(推荐第二种):
1、 cmd进入到程序目录下,如:cd C:/wamp/www/bin
启动并输出日志,如:
forever start -l forever.log -o out.log -e error.log -w -a t.js
2、 在程序目录下,新建一个txt文本文档,内容:
{
"uid": "mediasoup",
"append": true,
"watch": true,
"script": "t.js",
"sourceDir": "C:/wamp/www/bin",
"logFile": "C:/wamp/www/bin/foreverLogs/forever.log",
"outFile": "C:/wamp/www/bin/foreverLogs/out.log",
"errFile": "C:/wamp/www/bin/foreverLogs/error.log"
}
保存,并把文件名改为forever.json,记得新建一个文件夹为foreverLogs存放日志信息
在桌面新建一个txt文本文档,用来启动forever.json,输入:
@echo off
call forever start C:/wamp/www/bin/forever.json
pause
保存为bat文件,然后双击运行
查看是否运行成功,命令forever list
常用命令:
forever start app.js 启动进程
forever stop app.js停止进程
forever stopall 停止所有forever进程
forever list 显示所有运行的服务
遇到的问题:
Forever启动进程后,每隔60s会自动重启进程
导致问题的原因:
后台程序中存在每隔60s发送hello包的机制,程序每发一次hello包,foreverlog就会发生变化,又因为foreverlog存放在程序根目录下,程序会认为foreverlog是它的一部分,所以每当foreverlog发生变化时,进程就会重启
解决办法:
修改foreverLogs的存放路径