Node.js簡化云應用程序開發(fā)
大多數企業(yè)的計算機商店致力于特定開發(fā)平臺,通過使用企業(yè)計算機領域的兩名成員:Oracle的Java EE平臺和微軟的.NET而實現(xiàn)。當企業(yè)架構師和IT經理決定避開這些技術型開發(fā)實踐,轉移到一些其他新領域時,這就相當成功了,但是這樣的事情發(fā)生的越來越頻繁了。什么才是新的、關鍵技術?這要取決于公司的決策者(如Yahoo、eBay和Wamart)推崇什么樣的策略。正是Node.js這樣一個強大的服務器端腳本語言才能保證提高可伸縮性和性能,同時,具備一個簡單的編程庫,使得任何人都可以迅速地獲得編程能力。
Node.js的使用是通過許可進行管理,免費軟件MIT許可,維護及進一步開發(fā)則是由Joyent之前的員工Ryan Dahl負責,他在2009年創(chuàng)建了Node.js。Joyent的市場開發(fā)總監(jiān)Jim Farrell(@jimrafar),解釋了Joyent為什么會如此受進步的企業(yè)歡迎,尤其是那些對高彈性云技術非常感興趣的企業(yè)。他說:“Node.js處于軟件運行時,是服務器端Java腳本,允許較少的代碼完成更多的任務。因此,可以更有效地利用CPU周期。它的內存處理方式更有效。現(xiàn)在,其創(chuàng)建移動和Web應用程序是處于最高運行時。”
轉向Node.js平臺的真正意義是,隨著時間的推移,為開發(fā)節(jié)省更多的時間、簡化布局,以更少的代碼來管理和降低成本。
另一個好處是提供了一個繁榮和廣闊的社區(qū):在Node中,開發(fā)人員永遠不會孤單。有一群很精明的人正在交付創(chuàng)新和實用包。Farrell說:“Node社區(qū)本身非常善于發(fā)送軟件包。Node花費不到三年的運行時間,但是,與Ruby相比,Node包管理器(NPM)中有更多的軟件包。”Node.js代碼非常容易編寫,許多開發(fā)人員發(fā)布了他們自己的工具和小部件,作為其他調整、完善和改造的開放資源。“Node.js允許構建小工具,然后發(fā)出使其成為公開的資源。Node社區(qū)就會采用它、改變它,并在其中添加一些其他內容。”因此,就會形成一個廣泛的工具集。如果現(xiàn)在你還不需要這樣的工具集,那么很可能以后就會需要。
當然了,許多技術可以發(fā)掘其潛在益處:從增加性能到無限的可伸縮性。但是,Node.js支持者如何支持自己的觀點?云供應商領域中,Joyent本身就是基礎設施即服務(IaaS)成員。云計算領域內,該產品可以與任何熟知的產品競爭,其中包括亞馬遜。這是因為Joyent已經使用Node.js和他們管理及支持的軟件構建了自己的平臺。Joyent的公共云可以與亞馬遜競爭,這是因為Joyent構建了使用Node.js的云中間件。由于他們已經構建了系統(tǒng)方式,因此,Joyent強調,根據指標的使用情況,可以高出競爭對手二到二十倍的性能。Joyent理念一直是:應用Node.js建立自己的云計算棧,而不是為數據中心和應用程序棧購買軟件。使用Node.js已經實現(xiàn)了一個云計算平臺,可以加速移動,包括高效內存和CPU使用在內的上述縱向領域能力。
負責建立統(tǒng)一、簡單軟件棧的IT經理和軟件專業(yè)人士正避免使用Microsoft和Oracle提供的傳統(tǒng)的應用開發(fā)平臺,其中該軟件棧既可以應用于服務器端也可以用于客戶端。雖然有許多替代品存在,但是Node.js正處于上升期,尤其是設計師正在尋找構建基于云的應用程序。驗證了Joyent的IaaS云平臺實力后,再加上應用eBay、Walmart和Yahoo的軟件服務,就可以預測到未來越來越多的企業(yè)計算環(huán)境將會轉向Node.js。