node.js - nodejs為什麼沒有在伺服器端火起來?
習慣沉默
習慣沉默 2017-05-16 13:21:00
0
5
2837

前幾年大家都在熱捧nodejs,nodejs效能高,前後台同語言,節約開發資源,但是為什麼國內伺服器端語言還是以php,java為主呢? nodejs在前端工程化方面,例如gulp,webpack,各種前端工程化工具都是基於nodejs,但是nodejs在伺服器端卻沒有火起來?我明明記得前幾年大家都在討論說,nodejs寫伺服器端更有優勢呢?

習慣沉默
習慣沉默

全部回覆(5)
刘奇

不知道阿里、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作為編譯型語言,

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板