在虛擬機器層面 Node.js 基於的 v8 VM 看起來很不錯,但和 Java 的 VM 一比,差距甚遠。在伺服器領域,特別是擁有眾多 CPU 和大量記憶體的環境下,Java 的 VM 幾乎是你在地球上找到的最好的 VM。而 v8 既不能充分利用多 CPU 的效能,也不能將記憶體充分利用。你唯一能做的就是開很多個 Node.js 實例來緩解,但這進一步帶來了更多的問題。
Node.js 特別適合中小型系統的快速開發,而當系統變得複雜以後,Node.js 更適合充當 Web Gateway 的角色,以及用於前端開發。在這兩方面它擁有絕對優勢。
不知道阿里、PayPal 和 Uber 算不算大公司?淘寶雙十一就是建立在 Node 服務的基礎上,不算「火」?
實際上,在任何一家大廠,都不可能只有一種技術、架構、服務通吃。就像你不能簡單地說阿里是用 Java 的或 Facebook 是用 PHP 的。
不知道題主如何定義「在服務端火」。如果你指的是所有公司都把原有服務替換成 Node 那麼這是不可能的。
第一,即使現在出現一種新的全能技術,能秒殺所有其他語言,現有服務也不可能一夜之間都切換過去。只有可能在新的服務上應用新技術,等待新服務逐漸取代舊服務,新技術才逐漸取代舊技術。這也正是如阿里等公司在 Node 上所做的。
第二,一家公司採用什麼技術,技術本身只是一個不那麼重要的因素,更要考慮需求和成本。一家新創公司,不管用什麼技術都能實現業務,老闆更多考慮的是人員成本、招募的難易度等等。 PHP 和Java 都有大量從業者,而國內目前最優秀的 Node 程式設計師可能都集中在阿里等幾個大廠。
第三,好的程式設計師關注什麼技術能解決什麼問題,不是哪個語言比哪個語言好/火/流行。
第四,凡是能用 JavaScript 實現的,最終都會用 JavaScript 實作。
在虛擬機器層面 Node.js 基於的 v8 VM 看起來很不錯,但和 Java 的 VM 一比,差距甚遠。在伺服器領域,特別是擁有眾多 CPU 和大量記憶體的環境下,Java 的 VM 幾乎是你在地球上找到的最好的 VM。而 v8 既不能充分利用多 CPU 的效能,也不能將記憶體充分利用。你唯一能做的就是開很多個 Node.js 實例來緩解,但這進一步帶來了更多的問題。
Node.js 特別適合中小型系統的快速開發,而當系統變得複雜以後,Node.js 更適合充當 Web Gateway 的角色,以及用於前端開發。在這兩方面它擁有絕對優勢。
nodejs一直很火紅,但是主要是創業公司比較喜歡。對於大型公司,人家Java什麼的架構如果使用nodejs重寫成本很好,因此幾乎不用。加上今年創業公司倒了一大片,因此nodejs就不怎麼火了。
加上對nodejs比較熱衷的是前端的朋友,覺得可以前後端一起使用。
而實際上,對於後端開發人員來說,怎麼選都不會使用nodejs。例如我是搞資料品質的,第1選擇永遠都是python,連java都不用,就不要說什麼nodejs了。
用的人多不多和語言的優勢不一定正相關,可能就是習慣了。
http://fcode.cn/
你怎麼'知道沒有火起來,PHP已經是不行了,JAVA作為編譯型語言,