
forever是一个简单的命令行工具,他能确保一个给定的脚本持续运行。forever完全基于命令行 *** 作,在forever进程之下,创建node的子进程,通过monitor监控node子进程的运行情况,一旦文件更新,或者进程挂掉,forever会自动重启node服务器,确保应用正常运行。
所以就看一下forever的项目吧。主要的进程控制方面的代码地址。
核心就是使用了node api 中的 spawn,创建子进程,这个子进程就是我们真正的需要运行的node端服务。
父子进程的通信核心就是为了保活,主要就是监听了子进程,也就是需要被守护进程的exit事件
逻辑很简单,分别两个场景,一个是希望子进程不要再启动,一般就是外部控制杀死的;一个是意外退出后的重启,此处与一个spinning值的判断,也就是在退出后存在一个重启的时间间隔。
message事件来监听,用send方法来发送事件,父子进程通信就可以用做外部的控制的实现了。这里我们还需要注意一个细节,就是node后端服务运行中会输出很多的日志,此时放在子进程中的控制台输出,如果希望暴露出来就可以使用optionsstdio属性。
保活的场景很多,这里可以使用forever库来处理,配合监控和日志功能,更好的保证线上环境的稳定。方法/步骤
1如果电脑没有安装nodejs的同学可以先到node官方下载并安装好node程序。
安装好nodejs后验证一下是否安装成功!如果出现则表明node已经承装安装上去了!
2安装好node之后打开cmd 输入 npm install anywhere -g 安装anywhere ,然后等待直到出现以下界面。
3以上两个步骤都就绪以后,万事俱备,只欠东风啦!在cmd页面 找到你想搭建服务器的路径,然后再当前路径下输入: anywhere 8860
然后浏览器就自动打开本地访问网址,一个简单的node服务器就这样被我们搭建好啦!首先创建一个>建立一个WebSocket连接,客户端浏览器首先要向服务器发起一个>如果服务器使用的IP是内网IP(比如192168开头的那种),那是肯定无法从外网直接访问的(想想全世界会有多少个和你服务器IP相同的机子吧),外网只能访问到你的路由器(或者硬件防火墙)的外网端口(它的IP是一个公网IP地址)
如果你需要从外网访问内网的服务器,你必须在你的路由器(或防火墙)的外网端口配置NAT,将这个外网IP的指定端口映射到你的内网服务器上(这叫做端口映射)
比如说你这是一台Web服务器,启用了80端口,你需要在路由器上为外网端口配置NAT,将这个外网IP的80端口映射到你这台服务器IP的80端口,配置完成后,你可以在外网用这台路由器的公网IP来访问到你的这台内网服务器的Web页(当然你在外网只能用公网IP访问网时服务器先确认下系统环境合不合要求
Python -V(确认python版本大于26)
访问>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)