官網描述:javascript
Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications.java
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient,node
perfect for data-intensive real-time applications that run across distributed devices. 數據庫
(譯)Node.js 是一個平臺,創建在 Chrome JavaScript 運行時之上,爲了更容易創建快速、可伸縮的網絡應用。npm
Node.js使用事件驅動,非阻塞的 I/O 模式,這使得他是輕量而高效的,可以在分佈設備上完美運行高數據吞吐的實時應用。 編程
詳細介紹(來自百科):windows
Node.js是一個Javascript運行環境(runtime)。瀏覽器
V8引擎執行Javascript的速度很是快,性能很是好;實際上它是對Google V8引擎(應用於Google Chrome瀏覽器)進行了封裝。安全
Node.js對一些特殊用例進行了優化,提供了替代的API,使得V8在非瀏覽器環境下運行得更好。服務器
例如,在服務器環境中,處理二進制數據一般是必不可少的,但Javascript對此支持不足,所以,V8.Node增長了Buffer類,方便而且高效地 處理二進制數據。
V8引擎自己使用了一些最新的編譯技術。
這使得用Javascript這類高級語言編寫出來的代碼與用C這類高級語言寫出來的代碼性能相差無幾,卻節省了開發成本。
對性能的苛求是Node.js的一個關鍵因素。
Javascript是一個事件驅動語言,Node.js利用了這個優勢,編寫出可擴展性高的服務器。
Node.js採用了一個稱爲「事件循環(event loop)」的架構,使得編寫可擴展性高的服務器變得既容易又安全。提升服務器性能的技巧有多種多樣。
Node.js選擇了一種既能提升性能,又能減低開發複雜度的架構。併發編程一般很複雜且佈滿地雷。Node.js繞過了這些,但仍提供很好的性能。
Node.js採用一系列「非阻塞」庫來支持事件循環的方式。本質上就是爲文件系統、數據庫之類的資源提供接口。
當你向文件系統發送一個請求時,無需等待硬盤(尋址並檢索文件),硬盤準備好的時候非阻塞接口會通知Node.js。該模型以可擴展的方式簡化了對慢資源的訪問, 直觀,易懂。
雖然讓Javascript運行於服務器端不是Node.js的獨特之處,但倒是其強大功能。
下載安裝:
點擊http://nodejs.org/,進入官網,下載windows版本:http://nodejs.org/dist/v0.6.6/node-v0.6.6.msi
下載完成後,直接點擊安裝:
默認安裝目錄:C:\Program Files\nodejs
安裝完成,不生成快捷方式,手動去安裝目錄查看便可;
安裝完成後目錄下,一個node.exe\npm.cmd\node_modules(文件夾);
安裝包會自動把安裝路徑寫入環境變量path中,可進行全局訪問;
安裝測試:
打開cmd命令窗口,輸入node,回車;
cmd窗口會出現」>」輸入".help」,回車;
> .help .break Sometimes you get stuck, this gets you out .clear Break, and also clear the local context .exit Exit the repl .help Show repl options .load Load JS from a file into the REPL session .save Save all evaluated commands in this REPL session to a file
恭喜您基本安裝成功!
開始一個HelloWorld:
在D盤創建一個文件夾:Nodejs
在些文件夾下新建一個文本文件,並輸入
var http = require('http'); http.createServer(function (request, response) { // 發送 HTTP 頭部 // HTTP 狀態值: 200 : OK // 內容類型: text/plain response.writeHead(200, {'Content-Type': 'text/plain'}); // 發送響應數據 "Hello World" response.end('Hello World\n'); }).listen(8888); // 終端打印以下信息 console.log('Server running at http://127.0.0.1:8888/');
保存,並重命名文件爲"server.js」;
解說:
咱們使用 require 指令來載入 http 模塊,並將實例化的 HTTP 賦值給變量 http,
接下來咱們使用 http.createServer() 方法建立服務器,並使用 listen 方法綁定 8888 端口。 函數經過 request, response 參數來接收和響應數據。
以上代碼咱們完成了一個能夠工做的 HTTP 服務器。
使用 node 命令執行以上的代碼:
node server.js Server running at http://127.0.0.1:8888/
接下來,打開瀏覽器訪問 http://127.0.0.1:8888/,你會看到一個寫着 "Hello World"的網頁。
分析Node.js 的 HTTP 服務器: