為什麼Node.js適合在企業應用而Rails不是?

banq發表於2015-01-05
來自Reddit的一條討論:Why has node been so well adapted in the enterpris,綜合討論中回覆原因總結如下:

1.Node.js適逢Paas普及了,服務實現解耦,其工具開發堆疊穩定易於理解,Node趕上了好時機,有良好的生態系統。

2.Rails試圖做一切,當你啟動rails應用時,總是預設假設當前場景是直接對資料庫進行讀寫操作,而同時,它又不不是真的合適用於API-only元件,這使得它很難適合架構中最高階或最低端兩個層次。

3.使用Rails,最好你能使用快取,否則難於擴充套件底層設施,當然,這對於Node也是同樣,不能做CPU繁重的操作,但是Node很通用,適合做企業前端,而前端大部分工作是等待其他服務的資料,也就是IO-bound,注重IO通訊。

4. Ruby對於C#/Java/Javascript的人來說是"funny-looking"/"foreign-looking" ,雖然這不是好理由,但是人們有時願意使用看上去熟悉的解決方案。

5. Rails旗艦應用特點是大規模的MVC CRUD,而Node是針對需要實時事件的特殊應用。Node能夠在現有系統中加入實時能力,而Rails需要重新開發整個系統。

6.如果我開發一個Web服務,我當然使用Node,而Rails有許多附加的並不需要的玩意。當然看看效能比較就找到理由了。

7.因為大量的人都熟悉Javascript,Ruby社群非常Rails中心化,所以除非你跟上Rails節奏,你就很難借鑑社群知識;非同步事件驅動讓人們產生共鳴;還有人們願意前後端使用同樣的語言。

8.Rails大部分應用是整體性monolithic(鐵板一塊)的,很難模組化,它很適合快速專案原型。(Node天生是微服務,是微服務的倡導者和大規模踐行者,模組化的)

相關Nodel文章:

Node.js最佳實踐

Node.js程式設計之道

十個Node.js開發最容易犯的錯誤

相關文章