一、Node.js介紹
Node.js是一個javascript運行環境。它讓javascript可以開發後端程序,實現幾乎其他後端語言實現的所有功能,可以與PHP、Java、Python、.NET、Ruby等後端語言平起平坐。 【影片教學推薦:nodejs 教學 】
Nodejs是基於V8引擎,V8是Google發布的開源JavaScript引擎,本身就是用於Chrome瀏覽器的js解釋部分,但是Ryan Dahl這哥們,鬼才般的,把這個V8搬到了伺服器上,用於做伺服器的軟體。
二、node.js的優勢
#1、Nodejs語法完全是js語法,只要你懂js基礎就可以學會Nodejs後端開發
Node打破了過去JavaScript只能在瀏覽器中執行的局面。前後端程式設計環境統一,可大幅降低開發成本。
2、NodeJs超強的高並發能力
NodeJs的首要目標是提供一種簡單的、用於建立高效能伺服器及可在該伺服器中運行的各種應用程式的開發工具。
首先讓我們來看看現在的伺服器端語言中存在著什麼問題。在Java、PHP或.NET等伺服器語言中,會為每個客戶端連線建立一個新的執行緒。而每個線程需要耗費大約2MB記憶體。也就是說,理論上,一個8GB記憶體的伺服器可以同時連接的最大用戶數為4000個左右。要讓web應用程式支援更多的用戶,就需要增加伺服器的數量,而web應用程式的硬體成本當然就上升了。
NodeJs不會為每個客戶連接建立一個新的線程,而只使用一個線程。當有使用者連線了,就觸發一個內部事件,透過非阻塞I/O、事件驅動機制,讓Node.js程式宏觀也是並行的。使用Node.js,一個8GB記憶體的伺服器,可以同時處理超過4萬用戶的連線。
3、實作高效能伺服器
嚴格地說,Node.js是一個用來開發各種web伺服器的開發工具。在Node.js伺服器中,運行的是高效能V8 JavaScript腳本語言,該語言是一種可以運行在伺服器端的腳本語言。
那麼,什麼是V8 JavaScript腳本語言呢?該語言是一種被V8 JavaScript引擎所解析並執行的腳本語言。 V8 JavaScript引擎是由Google公司使用C 語言開發的高效能JavaScript引擎,該引擎並不限於在瀏覽器中運作。 Node.js將其轉用在了伺服器中,並為其提供了許多附加的具有各種不同用途的API。例如,在一個伺服器中,經常需要處理各種二進位資料。在JavaScript腳本語言中,只具有非常有限的對二進位資料的處理能力,而Node.js所提供的Buffer類別則提供了豐富的對二進位資料的處理能力。
另外,在V8 JavaScript引擎內部使用一種全新的編譯技術。這意味著開發者編寫的高階的 JavaScript 腳本程式碼與開發者編寫的低端的C語言具有非常相近的執行效率,這也是Node.js伺服器可以提供的一個重要功能。
4、開發週期短、開發成本低、學習成本低
Node.js自身哲學,是話最小的硬體成本,追求更高的並發,更高的處理性能。
三、Node.js能做什麼
#看圖:
##更多程式設計相關知識,可存取:程式設計入門! !
以上是Node.js是什麼?有什麼優勢?有什麼用途?的詳細內容。更多資訊請關注PHP中文網其他相關文章!