您好,登錄后才能下訂單哦!
這篇文章主要介紹“nodejs有什么缺點”,在日常操作中,相信很多人在nodejs有什么缺點問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”nodejs有什么缺點”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
nodejs的缺點:1、不適合CPU密集型應用;2、只支持單核CPU,不能充分利用CPU;3、可靠性低;4、開源組件庫質量參差不齊,更新快,向下不兼容;5、Debug不方便,錯誤沒有stack trace。
本教程操作環境: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有什么缺點”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。