首頁  >  文章  >  web前端  >  nodejs有哪些缺點

nodejs有哪些缺點

青灯夜游
青灯夜游原創
2021-11-11 15:22:143927瀏覽

nodejs的缺點:1、不適合CPU密集型應用;2、只支援單核心CPU,無法充分利用CPU;3、可靠性低;4、開源元件庫品質參差不齊,更新快,向下不相容;5、Debug不方便,錯誤沒有stack trace。

nodejs有哪些缺點

本教學操作環境:windows7系統、nodejs 12.19.0版、Dell G3電腦。

Node.js本質上就是一個JavaScript的運作環境。

Node.js是一個基於Chrome JavaScript運行時間建立的平台, 用於方便地建立響應速度快、易於擴展的網路應用。 Node.js使用事件驅動,非阻塞I/O 模型而得以輕量且高效,非常適合在分散式裝置上運行資料密集型的即時應用。

nodejs的缺點:

1、不適合CPU密集型應用;

CPU密集型應用程式為Node帶來的挑戰主要是:由於JavaScript單執行緒的原因,如果有長時間運行的運算(例如大循環),將會導致CPU時間片無法釋放,使得後續I/O無法發起;

  • 解決方案:分解大型運算任務為多個小任務,使得運算能夠適時釋放,不阻塞I/O呼叫的發起;

2、只支援單核心CPU,不能充分利用CPU

3、可靠性低,一旦程式碼某個環節崩潰,整個系統都會崩潰

  • 原因:單一進程,單執行緒

#4、開源元件庫品質參差不齊,更新快,向下不相容

5、Debug不方便,錯誤沒有stack trace

##適合NodeJS的場景

1. RESTful API

這是NodeJS最理想的應用場景,可以處理數萬個連接,本身沒有太多的邏輯,只需要請求API,組織數據進行返回即可。它本質上只是從某個資料庫中尋找 一些值並將它們組成一個回應。由於回應是少量文本,入站請求也是少量的文本,因此流量不高,一台機器甚至可以處理最繁忙的公司的API需求。

2. 統一Web應用的UI層

目前MVC的架構,在某種意義上來說,Web開發有兩個UI層,一個是在瀏覽器裡面我們最終看到的,另一個在server端,負責產生和拼接頁面。

不討論這種架構是好是壞,但是有另外一種實踐,面向服務的架構,更好的做前後端的依賴分離。如果所有的關鍵業務邏輯都封裝成REST調用,就表示在上層 只需要考慮如何用這些REST介面建構特定的應用。那些後端程式設計師根本不操心具體資料是如何從一個頁面傳遞到另一個頁面的,他們也不用管用戶資料更新是 透過Ajax非同步取得的還是透過刷新頁面。

3. 大量Ajax請求的應用

例如個人化應用,每個使用者看到的頁面都不一樣,快取失效,需要在頁面載入的時候發起Ajax請求,NodeJS能回應大量的並發請求。  總而言之,NodeJS適合運用在高並發、I/O密集、少量業務邏輯的場景。

【推薦學習:《

nodejs 教學》】

以上是nodejs有哪些缺點的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn