驚喜!Java為服務器端Web應用帶來最高運行速度
譯文在基準測試中,Java基礎框架以出色的性能表現傲視群雄——但真正吸引開發人員的因素卻并非性能
骨文公司似乎正持續將Java推向各個領域,從“物聯網”等新興領域到傳統范疇,而且這一推動并非依靠宣傳與炒作。在最近的一項基準測試當中,Java力克眾多服務器端Web框架競爭對手、一舉拿下最佳性能表現桂冠。不過單靠出色的性能是否足以拉攏非Java技術人員的擁護?
自2013年3月開始,軟件開發企業TechEmpower公司已經對當下流行的十多種Web應用程序服務器框架進行過性能基準測試,其中包括Ruby on Rails以及Django。每一輪成功測試在參考發布在GitHub上的開源基準測試之外,還會征求來自技術社區的反饋意見。有興趣對自己使用的框架進行基準測試的朋友可以利用同樣的開源代碼親手進行檢驗,并將結果提交給該公司。
TechEmpower公司的第七輪基準測試結束于今年十月末——其中包括84套框架以及約200種不同的測試排列——最終結果表明,在各類領域中表現最出色的框架普遍以Java為基。其中最突出的框架有Gemini、Grizzly(旨在使Java的New I/O API更加易用)、Undertow以及Vertx。
更令人驚訝的是,不少知名度極高的框架——例如針對Ruby的Sinatra、各類ASP .Net框架以及針對Python的Django等——在性能表現方面與優勝者相比簡直差了一個量級。作為塊領域的新貴,Node.js確實帶來令人印象深刻的性能表現,但其最終成績也只達到第一名的四分之一到三分之一。
甲骨文一直在為Java搖旗吶喊,并將其描述為一套可應對各類需求的多合一解決方案(把“各類”換成“全部”可能更為確切)——而其最理想的發揮舞臺就是Web服務。甲骨文為Java 8制定的計劃包括統一Java各個版本,從而使開發人員能夠更輕松地針對不同嵌入式設備及服務器編寫代碼——如果ARM真的能夠入主服務器平臺,那么嵌入式設備與服務器之間的界線將更加模糊。另外,Java還得到Avatar項目的有力支持,這是一套JavaScript與HTML 5服務層,旨在讓Java能夠與Grizzly順利協作。
如果Grizzly以及其它Java框架同胞的表現確實有這么出色,這是否意味著開發人員都會為之所吸引并嘗試將一切利用Java進行重新編寫?答案恐怕是否定的。盡管甲骨文很喜歡這種思維方式,但開發人員在選擇框架時往往還需要在性能之外考慮多種其它因素——例如易于開發、靠譜的發布時間、開發人員親和力以及第三分技術社區的參與程度等,這一切都會起到重要的參考作用。隨便舉個例子:CakePHP在TechEmpower的性能競賽中表現糟糕,基本上與Codelgniter和Symfony處于同一水平,但PHP及其框架把持著Web領域35%的份額,因此其人氣依舊高漲。
Java框架也許確實擁有甲骨文一直在鼓吹的出色性能,但其它框架則擁有另一種形式的競爭優勢,例如開發人員基礎、滲透能力以及用戶忠誠度等——甚至有些用戶會單純因為討厭被甲骨文窺視的感覺而拒絕Java。
原文鏈接:http://www.infoworld.com/t/java-programming/surprise-java-fastest-server-side-web-apps-230565