NodeJS,一個基于Google Chrome V8 JS引擎的服務器端JavaScript運行時,曾經被認識只是一個趕時髦的技術,有誰會想到,它正在吞噬著我們的軟件世界。NodeJS成為構建Web應用最為常用的環境之一,而且正在試圖進入企業領域。Anthony Delgado列出了五個巨頭公司,他們在高流量的生產環境中使用了這項“時髦”的服務器端JavaScript引擎。
1. Netflix
Netflix通過JavaScript和NodeJS將他們的網站轉成了單頁應用(SPA)。Netflix原本也是傳統的企業級Java應用,但在他們把數據中心遷移到云端的過程中,他們采用了基于服務的架構模式,將單體應用拆分成一系列更小的服務。Netflix的后端仍然由Java在支撐著,但用戶能夠看到的東西都來自NodeJS。
2. PayPal
PayPal的Web應用平臺也正在從Java遷移到JavaScript和NodeJS。他們使用NodeJS創建了一個原型平臺,一旦該平臺被證實是行之有效的,他們就會將它應用到生產環境中。PayPal在生產環境的第一個NodeJS應用是他們的賬戶概覽頁面,這也是訪問量最大的功能頁面之一。PayPal的兩個團隊分別使用Java和JavaScript創建“賬戶概覽”頁面,而事實證明,JavaScript團隊能夠更快更有效地構建好應用。在轉換過程中,PayPal還開源了一個叫作KrakenJS的ExpressJS擴展,可以通過它給NodeJS服務器增加額外的安全層和伸縮層。
3. Uber
Uber在他們的司機和乘客匹配系統上采用了基于NodeJS的分布式Web架構。Uber的高級網站可靠性工程師Tom Crouche在NodeJS交流會上呈現了一個演講,他在演講中介紹了Uber是如何使用NodeJS的,并指出未來的發展需要社區不斷擴大NodeJS的邊界。從Uber的GitHub主頁上可以了解到Uber的很多關鍵系統都在使用NodeJS。
4. IBM
IBM也在擁抱NodeJS。來自IBM的Myles Borins在不久前召開的NodeJS交流會上分享了他們在NodeJS方面的經驗。他說:“2015年10月,我被指派負責Canary in the Gold Mine(CITGM)項目,它是一個冒煙測試工具,可以自動化運行各種NodeJS模塊的單元測試。CITGM非常成功,它找出了NodeJS生態系統和NodeJS內核的各種衰退問題。”
5. 微軟
微軟也在擁抱NodeJS,他們直接將NodeJS集成到Azure平臺,并發布了一系列NodeJS相關教程,甚至計劃為NodeJS創建分支,使用他們自己的Edge JavaScript引擎替代Chrome的V8來構建自己的NodeJS版本。