nodejs調試模式,nodejs 回調

本文目錄一覽:

如何調試nodejs

Node Inspector 是一個可在webkit內核瀏覽器下進行nodejs調試的工具,其界面基本上跟chrome的調試工具一樣,使用非常方便。

首先在全局環境中安裝node inspector

[javascript] view plaincopy

npm install -g node-inspector

安裝完成之後,以調試模式運行需要調試的node代碼,比如

[javascript] view plaincopy

node –debug-brk app.js

這種方式會在代碼運行的時候,強制在第一行添加斷點

這時,會出現「debugger listening on port 5858」的提示

默認的埠是5858,也可以像這樣修改:

node –debug-brk[=3000] app.js

然後,啟動node-inspector,

[javascript] view plaincopy

node-inspector 

(因為之前的nodejs代碼在運行,所以命令行窗口沒辦法輸入新的命令,所以啟動node-inspector需要新打開一個命令行窗口來輸入)

根據提示中的地址,打開

就可以看到,一個模擬Chrome調試窗口的頁面,載入了node中的所有代碼,具體的調試方式,就和Chrome一樣了。

還有一種方式是在代碼中需要添加斷點的地方,加入

[javascript] view plaincopy

debugger;

以下面這種方式運行

[javascript] view plaincopy

node –debug app.js

這樣代碼會運行到需要debugger的地方暫停。

nodeJS(前後端分離、優勢、不足

文章閱讀,來自 前端之巔 去哪兒網 部分摘錄

1.項目分離,頁面分離

第一種是項目分離,承載頁面分離。他的特點是簡單,快速,前端只關注瀏覽器方面,除瀏覽器端之外都是後端負責。

缺點 :

溝通成本高,前期,前端需要使用 ng 或者代理工具調試,後期,還要把頁面給到後端,並且新建一個對應的路由。

2.項目分離,只是後端的頁面,放到了前端項目里

後端只需要配置路由,最終上線時,由發布系統負責把前端中的頁面,自動同步到後端相應的目錄中。其中相應的目錄需要前後端提前約定,不然後端在渲染頁面的時候,就會找不到相應的文件。相比第一種方案,稍微有點進步。溝通成本會有一定的降低。

缺點 :

不過如果需要在頁面里做一些業務邏輯處理,還需要前端同學掌握和學習 velocity 語法,對於新同學而言看似掌握的了一門新語法,但實際操作起來並非想像中的流暢。

3.第三種方案是使用 Nodejs 作為頁面渲染層,後端只負責數據的生產工作

這也是目前階段主要的使用方式。它的優點是前端同學對於整個頁面的生命周期有完全的控制權,包括開發,調試,部署,上線以及後期的性能監控,應用監控等等。可做的事情也更多,比如使用 React SSR 做同構渲染。

缺點 :

對於前端同學的要求也會很高,除學習前端知識外,還要學習後端知識。

整個應用都是由前端統一負責,所以還需要接收報警電話或者簡訊,7*24 小時,都在待命狀態。

1.一些前端開發,只關注瀏覽器端,伺服器端開發關注很少,或者根本就不關注 ;

2.認為 Node.js 只適合開發一些工具類的功能,相對於後端開發來看它只是個玩具 ;

3.Node.js 的生態不如其他後端語言生態健全 ;

4.涉及到後端開發的知識面比較廣,在沒有這些基礎知識或者經驗積累的基礎上,考慮問題比較片面,最終做出的系統問題比較多,容易被後端鄙視 ;

看似問題很多,但實質上只有兩個原因,

1,自身知識儲備不夠。

2,對 Node.js 了解不深,不敢應用在生成環境中,即使應用到生產環境,一旦出現問題,不能快速及時的處理,導致高層認為還不如其他後端語言穩定,降低了我們的話語權。 (很中肯,不摸底,不敢用於項目)

1,提高開發效率,因為有了 Node 之後就不需要配置 Nginx 了,也不需要配置一些代理工具了,所有的頁面生命周期都是由前端統一去管理的,這時候不需要其他人進行合作。

2,降低溝通成本,除了介面格式外,不需要和後端進行交互了;

3,前後端職責也更為清晰,因為這時候,界限更為清晰了,後端只負責生產數據,它只提供數據就可以了,至於數據怎麼消費,以及怎麼用,都由前端去做;

4,可以同時使用 React SSR 技術,做到首屏渲染,提高用戶體驗,除了首屏之外,還可以做非同步的載入、SEO 等操作。

5,Node.js 可提供一些服務,不僅能讓我們使用,還可以對外使用,如 RESTful API,這樣就不用有求於後端了。

/———————————————文章摘錄結束————————————————-/

除了號稱nodejs界jQuery的express,

另外兩個比較不錯的

一個是 360 團隊的 Thinkjs ,

一個是阿里的 Eggjs

webstorm怎麼啟動nodejs的調試和伺服器

1.安裝:npm install -g node-inspector

2.啟動debug模式(單獨命令行):

node-debug (該命令默認8080埠)

node-debug –web-port 1984 (定義任意埠)

3.訪問chrome debug devTools

路徑如:;port=5858

4.啟動gulp或者grunt服務(具有gulp或者grunt任務時)

node –debug-brk $(which grunt) server (這種模式使用在第一次初始化執行的代碼)

node –debug $(which grunt) server(這種模式使用在初始化之後監聽的node代碼)

如何監控nodejs的event queue

第一步,在全局環境中安裝node inspector。第二步,安裝完成之後,以調試模式運行需要調試的node代碼。第三步,啟動node inspector。第四步,就可以看到,一個模擬Chrome調試窗口的頁面,載入了node中的所有代碼。

nodejs是單線程運行的,通過一個事件循環來循環取出消息隊列(event queue)中的消息進行處理,處理過程基本上就是去調用該消息對應的回調函數。

原創文章,作者:WSHH,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/143417.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
WSHH的頭像WSHH
上一篇 2024-10-19 16:43
下一篇 2024-10-19 16:43

相關推薦

  • NodeJS 建立TCP連接出現粘包問題

    在TCP/IP協議中,由於TCP是面向位元組流的協議,發送方把需要傳輸的數據流按照MSS(Maximum Segment Size,最大報文段長度)來分割成若干個TCP分節,在接收端…

    編程 2025-04-29
  • 手機安全模式怎麼解除?

    安全模式是一種手機自身的保護模式,它會禁用第三方應用程序並使用僅限基本系統功能。但有時候,安全模式會使你無法使用手機上的一些重要功能。如果你想解除手機安全模式,可以嘗試以下方法: …

    編程 2025-04-28
  • Qt State Machine與狀態機模式

    本文將介紹Qt State Machine和狀態機模式在Qt中的實現。Qt提供了QStateMachine和QState兩個類,可以方便地實現狀態機模式,並且能有效地處理複雜的、多…

    編程 2025-04-27
  • 如何使用proformradio選擇回調

    proformradio是一個輕量級的jQuery插件,用於創建自定義的表單樣式。該插件支持多種類型的回調函數,其中包括選擇回調函數。選擇回調函數將在用戶選擇單選框或選中複選框時觸…

    編程 2025-04-27
  • 顯示C++設計模式

    本文將詳細介紹顯示C++設計模式的概念、類型、優點和代碼實現。 一、概念 C++設計模式是在軟體設計階段定義,用於處理常見問題的可重用解決方案。這些解決方案是經過測試和驗證的,並已…

    編程 2025-04-27
  • Centos7進入單用戶模式的解釋

    本文將介紹如何在Centos7中進入單用戶模式,並從以下幾個方面進行詳細的闡述。 一、Centos7進入單用戶模式的解答 在Centos7中進入單用戶模式需要執行以下步驟: 1. …

    編程 2025-04-27
  • 深入解析PSM模式

    一、PSM模式是什麼 PSM模式,即頁面-狀態-模型模式,是一種前端開發模式。它以頁面為中心,將頁面內的所有狀態和業務邏輯抽象成一個由頁面轉化而來的虛擬狀態機模型,從而將業務邏輯與…

    編程 2025-04-25
  • 授權碼模式與OAuth2.0

    一、什麼是授權碼模式 授權碼模式(Authorization Code Grant Type)是OAuth2.0協議中最常用的授權方式之一,也是最為安全的一種授權方式。授權碼模式的…

    編程 2025-04-24
  • 暗黑模式的盛行

    一、背景和定義 暗黑模式起源於智能手錶和夜視儀等專業設備上的配色方案,是指採用黑底白字、暗灰底白字等相對較暗的背景色搭配亮色前景,以減少屏幕對用戶眼睛的刺激,降低視覺疲勞感。這種設…

    編程 2025-04-24
  • 谷歌瀏覽器深色模式

    一、深色模式的概念 深色模式是一種日益流行的 UI 設計趨勢,通過使用暗灰色或黑色背景,大大降低了屏幕的亮度,更加舒適和護眼。深色模式也被稱為暗黑模式。 谷歌瀏覽器深色模式的推出可…

    編程 2025-04-24

發表回復

登錄後才能評論