位置: 编程技术 - 正文

node.js程序作为服务并在windows下开机自启动(用forever)(node js作用)

编辑:rootadmin

推荐整理分享node.js程序作为服务并在windows下开机自启动(用forever)(node js作用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js是用什么写的,nodejs运行程序,nodejs运行程序,node js作用,node.js可以写后端吗,nodejs运行程序,nodejs运行程序,node js作用,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

最近项目中有一块服务是用node.js实现的,运行环境是windows server R2,刚开始着手实现这块功能的时候时间很紧迫,随便写了个console程序就部署上去了……启动方式就是在 CMD 里输入node main.js。

然而这样搞肯定是不行的啊!这样搞的话,万一有哪个 Error 没捕获到,整个服务就挂了,虽然咱写的代码很严谨,跑了一个多月也没挂,但为了万无一失,还是得有个自动重启的能力。

而且更关键的问题是……现在这样好low啊……开机后需要手动启动,而且运行的时候一直会显示一个 console ……这根本就忍不了啊!

目标:

支持崩溃后自动重启 支持后台运行 开机自动启动

自动重启和后台运行

因为 javascript 的单线程运行方式,一点错误就彻底崩溃的特性,自动重启的解决方案自然也早就有了,比如 pm2 和 forever ,从功能上看,pm2 比 forever 要强大不少,然而我只想要个 "Keep Alive" ,所以我选择了 forever.

先全局安装 forever

然后把启动用的bat脚本修改一下……

旧的启动脚本:

使用 forever 后的:

如果不出问题的话,应该就可以了~

然而每次你这样想的时候,就该出问题了_(:з)∠)_

forever 这家伙居然不认 windows 下的绝对路径…… 假如我是在c:UsersAdministrator下执行的命令,那么 forever 就会尝试去 c:UsersAdministratord:xxx下面寻找main.js……

node.js程序作为服务并在windows下开机自启动(用forever)(node js作用)

没错,除非路径的第一个字符是 / ,否则就会被当成相对路径来处理。

坑爹啊。

或许是我用不惯windows的缘故,反正我是没找到好的解决办法,最终迫于无奈,在bat脚本中手动切换了一下盘符处理了

最后的脚本:

其实我总是感觉这种做法不太对,但对 windows 实在不熟悉,如果谁有更好的办法也请评论告诉我

开机自动启动

既然是自动启动嘛,我首先想到的就是注册一个自启动的服务,然而注册的似乎只能是一个exe,用bat注册服务会报出一个 的错误

注册服务不行……那就只好用计划任务了……

新建一个计划任务,然后系统启动时的触发器,由这个计划任务来执行我们的bat

嘛……这种方法最后是生效了,唯一需要注意的就是安全选项中,一定要选中 "不管用户是否登录都要运行" 的选项!!

否则会在系统启动触发器被触发的时候,因为没有用户登录,所以直接跳过了这个计划任务,进而无法启动我们的服务。

虽然还有不完善的地方,但确实实现了预期的效果;最后说一句……windows服务器真TM麻烦……

总结

标签: node js作用

本文链接地址:https://www.jiuchutong.com/biancheng/377906.html 转载请保留说明!

上一篇:Mongoose经常返回e11000 error的原因分析(mongorestore报错)

下一篇:借助node实战JSONP跨域实例(如何使用nodejs)

  • 小规模30万免增值税1点怎么申报税款
  • 投资性房地产税务上可以计提折旧吗
  • 5月份企业所得税
  • 契税减免税特殊规定有哪些?
  • 高校报销需要增值税专用发票吗
  • 普惠性幼儿园是非盈利幼儿园吗
  • 库存商品余额在借方
  • 现金流量表填报说明
  • 领用包装物的会计分录
  • 市区增值税附征怎么填
  • 管理费用科目代码
  • 本金加收入减支出等于的是利润吗
  • 计提长期债券利息分录怎么做
  • 职工工资保险费账务处理怎么做?
  • 递延收益摊销金额怎么算
  • 行政单位的存货是什么
  • 关于银行借贷的法律知识
  • 企业如何处理劳方与资方的关系
  • 设备维保费税率怎么算
  • 开外经证预缴税款金额需要自己计算吗?建筑行业
  • 企业房屋管理办法
  • 准则大家学第十二集
  • 公司账户电子承兑
  • 生产企业出租设备如何开票
  • 盈余积累转增资本的条件
  • 应收票据收到了吗
  • macos 关闭屏幕
  • 春节发放物品计入什么科目
  • php怎么实现代码运行功能
  • 在建工程预付款可以计入费用么
  • php字符串定义的三种方式
  • 存货出租的会计分录
  • win 11怎么安装
  • config.cfg是什么文件
  • 天竺葵的养殖方法和繁殖方法
  • 黄金期货交易要怎么样
  • CodeIgniter扩展核心类实例详解
  • 存货盘亏的账务处理进项税额转出
  • 出差住宿费会计分录怎么做
  • 委托开发和购买开发
  • pythonnetworkx
  • php for break
  • 微信php开发教程
  • 关于持股平台的法律法规
  • 小企业库存商品会计分录
  • mongodb4
  • 物流公司扣押货物算犯法吗
  • 项目差旅费可以直接入成本吗
  • 建筑行业会计做账流程及会计分录
  • 视同销售是怎么回事?
  • 个人独资企业需要缴纳哪些税种
  • 在建工程结束后怎么处理
  • 应收账款多记账怎么做调整分录
  • 代收运输费的会计分录
  • 当月只有进项税额会计怎么做账
  • 股东打到公帐上怎么做账
  • 个人承担社保如何办理
  • 火车票进项抵扣需要认证吗
  • 货拉拉除了运费还要出钱吗
  • 递延所得税资产和递延所得税负债
  • 行政事业单位基本户核算内容
  • sqlserver使用方法
  • mysql完整教程
  • Windows Server 2008脱机文件配置攻略
  • openssl 用法
  • win8.0升级win8.1
  • linux系统怎么查看防火墙状态
  • js限制数组长度
  • 段正淳算正面人物吗
  • python自动截图
  • vue源码是用什么写的
  • 简要说明javascript的作用
  • javascript怎么用
  • js对象用法
  • 深圳企业所得税税率多少
  • 江阴市税务局电话号码
  • 常态化与长效化的区别
  • 给税务局说明怎写
  • 补缴往年土地使用税怎么做分录
  • 河南省土地使用税减免税优惠
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设