Node.js 在實時的 Web應用上采用了基於 WebSocket 的推送技術。這意味著什麼樣的革命性?Well,在經過了20多年的基於無狀態的請求-返機制的無狀態交互之後,我們終於有了實時的,雙向連接的web應用,客戶端和服務器端都可以發起通信,能夠自由地交換數據。與此形成鮮明對比的是傳統的 web響應模式,客戶端總是主動發起通信而服務端被動返回。此外,這些都是基於運行在標准80端口上的開放Web組件(HTML、CSS和JS)。
可能有人會說,我們已經使用 Flash 和 Java Applet 的形式很多年了——但實際上,這些方式只是使用網絡將數據傳遞到客戶端上的沙箱環境。他們都是隔離運行的,而且經常操作到需要額外的權限之類的非標准端口。
憑借其獨特的優勢,Node.js的現在已經在許多著名公司的產品中起到了關鍵作用。
Node.js 的主要思路是:使用非阻塞的,事件驅動的 I/O 操作來保持在處理跨平台 (across distributed devices) 數據密集型實時應用時的輕巧高效。這聽起來有點繞口。
它的真正含義是,Node.js 不是一個即將主導Web開發的世界的銀彈級的平台。相反,它是一個滿足特別需求的平台。你肯定不會希望使用 Node.js 去做 CPU密集型操作。事實上,使用它進行繁重的計算等於摒棄 Node 幾乎所有的優點。Node 真正的亮點在於建設高性能,高擴展性的互聯網應用——因為它能夠處理龐大的並且高吞吐量的並發連接。
基礎系統安裝
Node 在 Linux,Macintosh,Solaris 這幾個系統上都可以完美的運行,linux 的發行版本當中使用 Ubuntu 相當適合。這也是我們為什麼要嘗試在 ubuntu 15.04 上安裝 Node.js,當然了在 14.04 上也可以使用相同的步驟安裝。
1) 系統資源
Node.js 所需的基本的系統資源取決於你的架構需要。本教程我們會在一台 1GB 內存、 1GHz 處理器和 10GB 磁盤空間的服務器上進行,最小安裝即可,不需要安裝 Web 服務器或數據庫服務器。
2) 系統更新
在我們安裝 Node.js 之前,推薦你將系統更新到最新的補丁和升級包,所以請登錄到系統中使用超級用戶運行如下命令:
# apt-get update
3) 安裝依賴
Node.js 僅需要你的服務器上有一些基本系統和軟件功能,比如 'make'、'gcc'和'wget' 之類的。如果你還沒有安裝它們,運行如下命令安裝:
# apt-get install python gcc make g++ wget
下載最新版的Node JS v4.0.0
訪問鏈接 Node JS Download Page 下載源代碼.
復制其中的最新的源代碼的鏈接,然後用wget 下載,命令如下:
# wget https://nodejs.org/download/rc/v4.0.0-rc.1/node-v4.0.0-rc.1.tar.gz
下載完成後使用命令tar 解壓縮:
# tar -zxvf node-v4.0.0-rc.1.tar.gz
安裝 Node JS v4.0.0
現在可以開始使用下載好的源代碼編譯 Node.js。在開始編譯前,你需要在 ubuntu server 上切換到源代碼解壓縮後的目錄,運行 configure 腳本來配置源代碼。
root@ubuntu-15:~/node-v4.0.0-rc.1# ./configure
現在運行命令 'make install' 編譯安裝 Node.js:
root@ubuntu-15:~/node-v4.0.0-rc.1# make install
make 命令會花費幾分鐘完成編譯,安靜的等待一會。
驗證 Node.js 安裝
一旦編譯任務完成,我們就可以開始驗證安裝工作是否 OK。我們運行下列命令來確認 Node.js 的版本。
root@ubuntu-15:~# node -v
v4.0.0-pre
在命令行下不帶參數的運行node 就會進入 REPL(Read-Eval-Print-Loop,讀-執行-輸出-循環)模式,它有一個簡化版的emacs 行編輯器,通過它你可以交互式的運行JS和查看運行結果。
編寫測試程序
我們也可以寫一個很簡單的終端程序來測試安裝是否成功,並且工作正常。要做這個,我們將會創建一個“test.js” 文件,包含以下代碼,操作如下:
root@ubuntu-15:~# vim test.js var util = require("util"); console.log("Hello! This is a Node Test Program"); :wq!
現在為了運行上面的程序,在命令行運行下面的命令。
root@ubuntu-15:~# node test.js
在一個成功安裝了 Node JS 的環境下運行上面的程序就會在屏幕上得到上圖所示的輸出,這個程序加載類 “util” 到變量 “util” 中,接著用對象 “util” 運行終端任務,console.log 這個命令作用類似 C++ 裡的cout
結論
就是這些了。如果你剛剛開始使用 Node.js 開發應用程序,希望本文能夠通過在 ubuntu 上安裝、運行 Node.js 讓你了解一下Node.js 的大概。最後,我們可以認為我們可以期待 Node JS v4.0.0 能夠取得顯著性能提升。