Node.js使用supervisor進(jìn)行開發(fā)中調(diào)試的方法
如果你有 PHP 開發(fā)經(jīng)驗(yàn),會(huì)習(xí)慣在修改 PHP 腳本直接刷新瀏覽器以查看結(jié)果,而你 在開發(fā) Node.js 實(shí)現(xiàn)的 HTTP 應(yīng)用時(shí)會(huì)發(fā)現(xiàn),無論你修改了代碼的哪一個(gè)部分,都必須終止Node.js然后重新運(yùn)行。
這是因?yàn)?Node.js 只有在第一次引用到某一部分時(shí)才會(huì)去解析 本文件,以后都會(huì)直接訪問內(nèi)存,避免重復(fù)載入,而 PHP 則是重新讀取并解析腳本(如果沒有專門的優(yōu)化配置)。
在開發(fā)Node.js實(shí)現(xiàn)HTTP應(yīng)用時(shí)會(huì)發(fā)現(xiàn),無論你修改了代碼的哪一部分,都必須終止Node.js再重新運(yùn)行才會(huì)奏效。這是因?yàn)镹ode.js只有在第一次引用到某部分時(shí)才會(huì)去解析腳本文件,以后都會(huì)直接訪問內(nèi)存,避免重復(fù)載入。
Node.js的這種設(shè)計(jì)雖然有利于提高性能,卻不利于開發(fā)調(diào)試,因 為我們在開發(fā)過程中總是希望修改之后立即看到結(jié)果,而不是每次都要終止并重新啟動(dòng)。
supervisor 可以幫助你實(shí)現(xiàn)這個(gè)功能,它會(huì)監(jiān)視你對代碼的改動(dòng),并自動(dòng)重動(dòng) Node.js。
使用方法很簡單,首先使用 npm 安裝 supervisor:
$ npm install -g supervisor
如果使用的是 Linux 或 Mac,可以使用 sudo npm install -g supervisor來安裝。
接下來,使用 supervisor動(dòng) app.js: $ supervisor app.js
DEBUG: Running node-supervisor with
DEBUG: program ‘a(chǎn)pp.js'
DEBUG: –watch ‘.'
DEBUG: –extensions ‘node|js'
DEBUG: –exec ‘node'
DEBUG: Starting child process with ‘node app.js' DEBUG: Watching directory ‘/home/byvoid/.' for changes. HTTP server is listening at port 3000. 代碼被改動(dòng)時(shí),運(yùn)行本會(huì)被重新啟動(dòng)。在終端中顯示的結(jié)果如下:
DEBUG: crashing child
DEBUG: Starting child process with ‘node app.js'
HTTP server is listening at port 3000.
supervisor 這個(gè)小工具可以解決開發(fā)中的調(diào)試問題。

總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
- vscode調(diào)試node.js的實(shí)現(xiàn)方法
- 詳解如何在vscode里面調(diào)試js和node.js的方法步驟
- sublime text配置node.js調(diào)試(圖文教程)
- 詳解使用Visual Studio Code對Node.js進(jìn)行斷點(diǎn)調(diào)試
- 基于node.js之調(diào)試器詳解
- Node.js利用debug模塊打印出調(diào)試日志的方法
- Node.js調(diào)試技術(shù)總結(jié)分享
- 利用Chrome DevTools直接調(diào)試Node.js和JavaScript的方法詳解(并行)
- 調(diào)試Node.JS的輔助工具(NodeWatcher)
- Node.js 深度調(diào)試方法解析
相關(guān)文章
深入理解nodejs搭建靜態(tài)服務(wù)器(實(shí)現(xiàn)命令行)
這篇文章主要介紹了深入理解nodejs搭建靜態(tài)服務(wù)器(實(shí)現(xiàn)命令行),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-02-02
Node.js連接MongoDB數(shù)據(jù)庫產(chǎn)生的問題
Node.js是使用JavaScript 編寫的可以運(yùn)行在服務(wù)端的JS語言。node.js和mongodb碰撞會(huì)產(chǎn)生一系列問題,下面通過本文給大家分享Node.js連接MongoDB數(shù)據(jù)庫,需要的的朋友參考下2017-02-02
用C/C++來實(shí)現(xiàn) Node.js 的模塊(一)
這篇文章的主要內(nèi)容其實(shí)簡而言之就是——用C/C++來實(shí)現(xiàn) Node.js 的模塊,非常的不錯(cuò),有需要的朋友可以參考下2014-09-09
淺談Node.js CVE-2017-14849 漏洞分析(詳細(xì)步驟)
這篇文章主要介紹了淺談Node.js CVE-2017-14849 漏洞分析(詳細(xì)步驟),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-11-11
Node.js入門教程:在windows和Linux上安裝配置Node.js圖文教程
這篇文章主要介紹了Node.js入門教程:在windows和Linux上安裝配置Node.js的方法,本文圖文并茂,步驟明細(xì),是學(xué)習(xí)安裝node.js的絕佳教程,需要的朋友可以參考下2014-08-08
node.js中ws模塊創(chuàng)建服務(wù)端和客戶端,網(wǎng)頁WebSocket客戶端
今天小編就為大家分享一篇關(guān)于node.js中ws模塊創(chuàng)建服務(wù)端和客戶端,網(wǎng)頁WebSocket客戶端,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03
從Node.js事件觸發(fā)器到Vue自定義事件的深入講解
這篇文章主要給大家介紹了關(guān)于從Node.js事件觸發(fā)器到Vue自定義事件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06

