為什麼JVM能夠擊敗Node.js?

banq發表於2012-05-17
口水兼廣告貼,對目前幾種語言JVM語言 Javascript Ruby Python C 從非同步併發角度進行了比較,提出JVM語言在這點上能夠完勝擊敗其他競爭者,為什麼JVM能夠擊敗Node.js?Vert.x: Why the JVM May Put Node.js on the Ropes

開發者喜歡類似Python或Ruby這樣的乾淨語法的動態語言,同時也要求能夠實現目前主流的併發模型,能夠有來自websocket comet等連線服務。

因為JVM已經上升為一個多語言平臺, 我們發現動態語言透過支援JVM也能夠使用到偉大的執行緒模型,VMware公司出品的Vert.x符合這個要求

Vert.x是一個非同步應用伺服器,一種Node.js+ for the JVM. 下面圖表顯示為什麼Vert.x是那個Mr. right先生。

(圖表中顯示Ruby和Python對執行緒模型支援是Poor,比較差,而Node.js是最差,幾乎不支援,只有C的LibEvent支援很好的執行緒模型,但是不易於開發,C和Ruby與Python Node.js可以說是翹翹板兩個極端,而Vert.x處於中間)


Vert.x能夠讓Javascript Ruby Groovy編制的語言程式碼執行在JVM上,Vert.x是深深依賴事件驅動模型EDA,實際是Netty+Hazelcast, 透過平衡使用Hazelcast, 封裝了高效能的基於網路的in-memory記憶體事件匯流排,簡單易於使用,也特別整合了非同步Socket+非同步後端執行緒。

有興趣者可見的Vert.x頁面。



[該貼被banq於2012-05-17 09:10修改過]

[該貼被banq於2012-05-17 09:10修改過]

[該貼被banq於2012-05-17 09:13修改過]

相關文章