在开发或调试Node.js应用程序的时候,当你修改js文件后,总是要按下CTRL+C终止程序,然后再重新启动,即使是修改一点小小的参数,也 总是要不断地重复这几个很烦人的操作。这是因为Node.js 只有在第一次引用到某部份时才会去解析脚 本文件,以后都会直接访问内存,避免重复载入

Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因为我们在开发过程中总是希望修改后立即看到效果,而不是每次都要终止进程并重启。

有没有办法做到当文件修改之后,Node.js自动重新启动(或重新加载文件)以节省时间呢?一开始我是想到用 grunt的watch模块来监控文件变化,但后来在网上一查,原来我们想到的,别人早已想到,并且已经做得很好。Node Supervisor正是这样一个可以实现这种需求的Node.js模块。

supervisor 可以帮助你实现这个功能,它会监视你对代码的改动,并自动重启Node.js。 根据Github上的说明,Node Supervisor原本是用于服务器上Node.js应用崩溃的时候,自己重新启动。当然它也可以监控你的项目的js(或CoffeeScript)文 件变化,进而重启来方便我们调试应用程序。

安装方法(以全局模块安装):

代码如下

npm install supervisor -g

如果你使用的是Linux 或Mac,直接键入上面的命令很可能会有权限错误。原因是npm 需要把supervisor 安装到系统目录,需要管理员授权,

可以使用 sudo npm install -g supervisor 命令来安装。

注意一点的就是,supervisor必须安装到全局,如果你不安装到全局,错误命令会提示你安装到全局。如果不想安装到默认的全局,也可以自己 修改全局路径到当前路径   npm config set prefix "路径"

假设你的Node.js程序主入口是app.js,那么只需要执行以下命令,即可开始监控文件变化。

代码如下:

supervisor app.js

Supervisor还支持多种参数,列举如下:

代码如下:

//要监控的文件夹或js文件,默认为'.'
-w|--watch <watchItems>//要忽略监控的文件夹或js文件
-i|--ignore <ignoreItems>//监控文件变化的时间间隔(周期),默认为Node.js内置的时间
-p|--poll-interval <milliseconds>//要监控的文件扩展名,默认为'node|js'
-e|--extensions <extensions>//要执行的主应用程序,默认为'node'
-x|--exec <executable>//开启debug模式(用--debug flag来启动node)
--debug//安静模式,不显示DEBUG信息
-q|--quiet

例子:

代码如下:

supervisor myapp.js
supervisor -w py_scripts -e 'py' -x python myapp.py
supervisor -w lib, server.js, config.js, server.js

本文转自:Node.js web应用模块之Supervisor

Node.js web应用模块之Supervisor相关推荐

  1. Node.js web应用模块之forever

    javascript 一统江湖的势头越来越猛,越来越重的前端,不得不实施前后端分离,angular.js 成功把前端javascript抽象成了一个复杂的MVC框架,注意,它是一个框架,可不是普普通通 ...

  2. Node.js Web 模块

    Node.js Web 模块 什么是 Web 服务器? Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,Web服务器的基本功能就是提供Web信息浏览服务.它只需支持HTTP协议. ...

  3. Node.js Web 模块(客户端 服务端实例)

    Node.js Web 模块 Web 应用架构 Client - 客户端,一般指浏览器,浏览器可以通过 HTTP 协议向服务器请求数据. Server - 服务端,一般指 Web 服务器,可以接收客户 ...

  4. Node.js 指南(Docker化Node.js Web应用程序)

    Docker化Node.js Web应用程序 此示例的目的是向你展示如何将Node.js应用程序放入Docker容器中,该指南旨在用于开发,而不用于生产部署,本指南还假设你有一个有效的Docker安装 ...

  5. node.js Web应用框架Express入门指南

    node.js Web应用框架Express入门指南 作者: 字体:[增加 减小] 类型:转载 时间:2014-05-28 我要评论 这篇文章主要介绍了node.js Web应用框架Express入门 ...

  6. node.js web框架_使用Node.js进行Web爬取的终极指南

    node.js web框架 So what's web scraping anyway? It involves automating away the laborious task of colle ...

  7. node.js 程序_如何不使用外部程序包创建Node.js Web应用程序

    node.js 程序 by Abhinav Pandey 通过Abhinav Pandey 如何不使用外部程序包创建Node.js Web应用程序 (How to create a Node.js w ...

  8. Node.js Web开发框架

    Node.js非常适用于Web开发,但是现在无论是一个网站,还是Web App都已经成为包括很多不同部分,如前端.数据库.业务模块.功能模块等等的大型项目,使用Node.js从零开始进行Web开发,也 ...

  9. 面向前端与未来标准的Node.js Web 框架再进化

    Web 开发一直是 Node.js 的主流方向,无论新人必学的 Express / Koa,或者是社区流行的企业级框架 Egg / Nest,各类 Web 框架层出不穷.本次分享来自阿里巴巴前端技术专 ...

最新文章

  1. 进程间通信IPC之--共享内存
  2. Liunx中进程和计划任务管理
  3. Linux学习笔记(四)|软件安装指令
  4. 如何用linux登入数据库,Linux中MySQL数据库的使用①-----登录、数据库操作、表结构操作...
  5. mysql产品优化方案_mysql的优化方案
  6. 详解nohup和 区别
  7. CNN笔记:通俗理解卷积神经网络--理解不同输入通道和卷积核通道关系(红色部分)
  8. python函数控制词典_Python 基础之集合相关操作与函数和字典相关函数
  9. php 关闭 row,MySql php:检查Row是否存在
  10. 非平衡电桥电阻计算_绝缘检测电桥法中的几个重要概念
  11. python 替换array中的值_Python实现计数排序
  12. bzoj 1609: [Usaco2008 Feb]Eating Together麻烦的聚餐(DP)
  13. 跟开涛老师学shiro -- 身份验证
  14. 原创:微信小程序调用【统一下单】、【支付】、【支付回调】api并处理请求...
  15. SYNPROXY:廉价的抗 DoS 攻击方案
  16. Day_02 【Java基础】JDK_1.8的下载安装和环境变量的配置、JDK帮助文档的下载【详细步骤】
  17. java后台通用权限管理系统(springboot)
  18. 2023南京邮电大学计算机考研信息汇总
  19. 网贷、助贷、信贷、借贷,你搞懂了吗?
  20. 智能眼镜上可否能有“MIUI”?

热门文章

  1. The Stable Marriage Problem(POJ-3487)
  2. 最小花费(信息学奥赛一本通-T1344)
  3. 计算星期几(信息学奥赛一本通-T1083)
  4. 与指定数字相同的数的个数(信息学奥赛一本通-T1068)
  5. 计算机综合基础作业,《计算机网络基础》综合作业(参考答案).doc
  6. c语言写数码管,各位大神,如何用C语言实现在数码管上实现1234同时亮
  7. oracle先执行哪个from,Oracle(二)SELECT语句执行顺序
  8. uniapp返回上一页_uniapp怎么调用扫一扫功能?
  9. 【PyTorch】PixelShuffle
  10. ReflectionPad2d--利用输入边界的反射来填充输入张量