1. 程式人生 > >node初始化理解

node初始化理解

node的出現使得前後端可以使用同一種語言,統一模型的夢想得以實現

 

nodejs 解決了JavaScript的一些痛點

1、更好的組織程式碼,增加複用性。在es6中也得到了很大的提升

2、處理檔案與資料庫

3、與網際網路進行溝通,以標準化的格式處理請求傳送回答

 

nodejs的優點

1、採用事件驅動,非同步程式設計,為網路服務而設計

2、Nodejs非阻塞模式的IO處理給nodejs帶來相對系統資源耗用下的高效能與出眾的負載能力,非常適合用作依賴其它IO資源中的中間層服務

3、Nodejs高效輕量,可以認為是資料密集型分散式部署環境下的實時應用系統的完美解決方案

 

nodejs的缺點

1、可靠性低

2、單程序,只支援單核CPU 不能充分利用多核CPU伺服器一旦這個程序崩掉了,整個web服務就垮掉了

不過這些缺點是可以程式碼的健壯來彌補的

 

目前Nodejs的網路伺服器有以下幾種支援多程序的方式

1、開啟多個程序,每個程序繫結不同的埠,用反向代理伺服器如 nginx 做負載均衡,好處是我們可以藉助強大的nginx做一些過濾檢查的事情

同時可以實現比較好的均衡策略,唯一的不好使我們引入了一個間接層

2、多程序繫結在同一個埠監聽。在nodejs中提供了程序間傳送“檔案控制代碼”的功能

3、一個程序負責監聽、接收連結,然後把接收到的連結平均發到子程序中去處理