當前位置:名人名言大全網 - 經典說說 - 我為什麽要向後端工程師推薦NodeJS?

我為什麽要向後端工程師推薦NodeJS?

壹篇科普文章,給我講講Node.js,以及我作為前端工程師為什麽要給後端工程師推薦Node.js。

“Node.js是服務器端的JavaScript運行環境,具有非阻塞、事件驅動的特點。Node.js使用V8引擎。同樣,Node.js實現了類似Apache和nginx的web服務,允許妳通過它構建壹個基於JavaScript的Web應用。”

我認為不僅僅是Node.js在我們引入任何新技術之前,我們必須明確幾個問題:

我們遇到過哪些問題?

這項新技術解決了哪些問題,是否契合我們遇到的問題?

在解決我們問題的各種方案中,這種新技術的優勢是什麽?

使用新技術帶來的新問題有哪些?他們是認真的嗎?我們能解決它們嗎?

我們的問題:服務器端阻塞

Node.js旨在解決服務器阻塞問題。這裏有壹個簡單的代碼來解釋什麽是阻塞:

Js代碼:

//根據ID,在數據庫的Persons表中找到名字。

var name = db.query("從id=1的人員中選擇姓名");

//進程等待數據查詢完成,然後使用查詢結果。

輸出(“名稱”)

這段代碼的問題在於,在上面兩條語句之間,在整個數據查詢過程中,當前程序進程往往只是在等待結果的返回,導致進程被阻塞。對於高並發、I/O密集型線路的網絡應用,壹方面,進程長時間處於等待狀態。另壹方面,為了應對新的請求,不斷添加新的流程。這樣的浪費會造成系統支持的QPS遠遠小於後端數據服務支持的QPS,成為系統的瓶頸。而且這樣的系統特別容易受到慢速鏈接攻擊(客戶端故意不接收或者減慢接收到的數據,從而延長流程的等待時間)。