国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PayPal 為什么從 Java 遷移到 Node.js:性能提高一倍,文件代碼減少44%

you_De / 1349人閱讀

摘要:大家都知道是另一家遷移到平臺(tái)的大型公司,的這篇博文解釋了為什么從遷移出來的原因開發(fā)效率提高一倍個(gè)人用更少的時(shí)間干了個(gè)人的活,性能提高一倍,代碼量減少文件減少。性能性能是一個(gè)非常有意思和具有爭(zhēng)議性的話題。對(duì)于來說這是一個(gè)另人激動(dòng)的時(shí)刻。

大家都知道 PayPal 是另一家遷移到 Node.js 平臺(tái)的大型公司,Jeff Harrell 的這篇博文 Node.js at PayPal 解釋了為什么從Java遷移出來的原因:開發(fā)效率提高一倍(2個(gè)人用更少的時(shí)間干了5個(gè)人的活),性能提高一倍,代碼量減少33%, 文件減少40%。

(小編:個(gè)人認(rèn)為深層次原因是 Java 正在越來越走向封閉,而且變得越來越復(fù)雜而且 oracle 正在對(duì) Java 收費(fèi),參見:Oracle 計(jì)劃發(fā)布收費(fèi)版 JVM,這促使了越來越多的公司加入了去Java化的隊(duì)伍)

外面有很多人說PayPal正在遷移到node.js平臺(tái)。我很高興地在這里宣布,傳言是真的,我們正在從Java遷移至node.js。

由于歷史原因,我們的工程師一直分為兩撥人,一撥在瀏覽器上寫代碼(HTML,CSS,JavaScript);另一撥用 Java 寫應(yīng)用層的代碼。想象一下,一個(gè)寫 HTML 的不得不去叫一個(gè)寫 Java 將 A/B 兩個(gè)頁面鏈接到一起嗎?我們正在這樣干,我們稱這樣的人為全端工程師,那些即可以設(shè)計(jì)精美界面和服務(wù)器后臺(tái)的那些人。現(xiàn)在前后端已經(jīng)沒有界限了,這曾經(jīng)是阻礙PayPal發(fā)現(xiàn)的一個(gè)很大的瓶頸。

Node.js 幫助我們將前、后端合二為一,現(xiàn)在我們一個(gè)全端團(tuán)隊(duì)即可解決用戶的所有問題。

早期采納

像其他人一樣,我們剛開始使用 node.js 做了一些 demo 用的原型程序。跟很多人一樣,她表現(xiàn)出來的超高性能,讓我們最終決定把她放到線上去。

我們最初使用 express 來路由請(qǐng)求,nconf 用來配置,grunt 用來創(chuàng)建 tasks。Express 非常普及,但是我們發(fā)現(xiàn) Express 在多個(gè)團(tuán)隊(duì)協(xié)作時(shí)表現(xiàn)出的可伸縮性不足,它并不適合所有場(chǎng)合。Expres 非常靈活,但在大型團(tuán)隊(duì)開發(fā)上的可擴(kuò)展性不佳。最終我們的隊(duì)員基于原生的node.js,并創(chuàng)建了Karken.js;她并不是一個(gè)框架,更像是一個(gè)規(guī)范,但相對(duì)于 express,她更適合大型團(tuán)隊(duì)的擴(kuò)展。我們希望我們的工程師專注他們的應(yīng)用,而不是專注他們的運(yùn)行環(huán)境。

我們已經(jīng)在內(nèi)部使用 kraken.js 好幾個(gè)月了(我們馬上會(huì)把他開源的!)我們的工程師非常渴望這個(gè)內(nèi)部框架能盡快上線。

(小編:預(yù)測(cè) karken.js 即將是,另一個(gè)超火的后端框架,火熱程度參考 twitter 的 bootstrap )

將 node.js 布署到線上

我們第一個(gè)采用 nodejs 的產(chǎn)品不是一個(gè)小的應(yīng)用;是我們的瀏覽量最多的用戶首頁。我們希望步子邁得大一點(diǎn),但是我們清楚知道其中的風(fēng)險(xiǎn),所以我們同時(shí)還并行地運(yùn)行了一個(gè) Java 的程序。我們?cè)陂_發(fā)和擴(kuò)展 Java 方面非常有經(jīng)驗(yàn)。所以一旦 node.js 應(yīng)用出問題了,我們可以立即切回 Java。不過,同時(shí)我們也發(fā)現(xiàn)了一些非常有意思的數(shù)據(jù)。

開發(fā)

從1月份開始,我們花了幾個(gè)月的時(shí)間來搭建 node.js 的基礎(chǔ)設(shè)施。比如:sessions(會(huì)話),centralized logging(集中日志),keystores(存儲(chǔ))。在這期間我們有5位 Java 工程師在開發(fā) Java。在開發(fā)了兩個(gè)月后,兩位工程師開始開發(fā) node.js 應(yīng)用。在6月初兩個(gè)團(tuán)隊(duì)的開發(fā)進(jìn)度已經(jīng)一樣了,兩者的功能完全一樣。開發(fā) node.js 應(yīng)用的那個(gè)小團(tuán)隊(duì),盡管推遲了兩個(gè)月,但是很快趕上了。這里我們對(duì)這些相同功能做的一些單元測(cè)試得出的結(jié)果:

Node.js的是:

更少的人開發(fā)的 node.js 應(yīng)用比 Java 的快一倍;
節(jié)省了33%的代碼量;
少了40的文件;

(小編,這里作者的意思并不是 Java 程序員的素質(zhì)沒有 node.js 的好,Java 語言的特點(diǎn)決定她需要更多的人,更多的時(shí)間,更多的代碼去完成在 node.js 下的同樣的工作,并且吃力不討好。參考:他們?yōu)槭裁凑f面向?qū)ο笥袉栴},探討面向?qū)ο蟮囊恍┤毕?;性能測(cè)評(píng):Node.JS 比 Java EE 快 20% )

這是一個(gè)非常鼓舞人的證據(jù),我們似乎應(yīng)該更快地遷移到 JavaScript 平臺(tái)上去。我們立即做了一個(gè)決定,暫停 Java 應(yīng)用的開發(fā),全心全意開發(fā) JavaScript 應(yīng)用。這對(duì)開發(fā) Java 項(xiàng)目的工程師來說是個(gè)好消息,他們已經(jīng)消除了對(duì) node.js 的疑慮,非常高興地投入到了并行的 node.js開發(fā)上來,這樣我們的開發(fā)效率提高了兩倍。

性能

性能是一個(gè)非常有意思和具有爭(zhēng)議性的話題。在我們這,我們有兩個(gè)平臺(tái)實(shí)現(xiàn)完全一樣功能的程序;一個(gè)是使用基于 Spring 的內(nèi)部 Java 框架;另一個(gè)是基于 kraken.js,express,dust.js 和其他開源框架。 這些程序包含三個(gè) API,每個(gè) API 來響應(yīng) 2 到 5 個(gè)請(qǐng)求,由Dust 來模擬獲取數(shù)據(jù)和顯示頁面。

我們用線上的環(huán)境去測(cè)試這兩個(gè)應(yīng)用,并收集了完成響應(yīng)的時(shí)間和請(qǐng)求數(shù)。

node.js vs Java 性能對(duì)比

在這張圖上你可以看到 node.js 應(yīng)用的優(yōu)勢(shì):

每秒請(qǐng)求數(shù)量是Java的兩倍。不過更有意思的是我們僅使用了單核的node去跟5核的Java來對(duì)比,我們非常希望將來繼承擴(kuò)大 node.js 的優(yōu)勢(shì)。
渲染相同的頁面,node.js 節(jié)省了35%的時(shí)間。即每個(gè)頁面節(jié)約了 200 豪秒,用戶可以清楚地感覺到這樣的區(qū)別。

未來

我們將繼續(xù)使用 node.js 來構(gòu)建我們的Web應(yīng)用。像我們正在開發(fā)的那些門戶,和已經(jīng)上線的用戶概覽頁面。還有一打正在進(jìn)入 Beta 測(cè)試的那些工程,我們會(huì)繼續(xù)分享我們?cè)谏暇€過程中的經(jīng)驗(yàn),數(shù)據(jù)。對(duì)于 PayPal 來說這是一個(gè)另人激動(dòng)的時(shí)刻。


原文:Node.js at PayPal
翻譯轉(zhuǎn)載自:OurJS

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/63990.html

相關(guān)文章

  • 一次logback多線程調(diào)優(yōu)的經(jīng)歷

    摘要:由于不是線程安全的,故在方法上增加了同步操作,造成競(jìng)爭(zhēng)等待。至此,整個(gè)多線程調(diào)優(yōu)結(jié)束,通過充分優(yōu)化同步競(jìng)爭(zhēng)的方式,最終使得分線程記錄日志的性能比最原始的多線程寫同一文件提高了倍去鎖提高到倍,替換提高倍 背景 ??在一次項(xiàng)目的性能調(diào)優(yōu)中,發(fā)現(xiàn)出現(xiàn)競(jìng)爭(zhēng)瓶頸,導(dǎo)致在資源未使用滿的情況下,TPS已經(jīng)無法提升。祭起JMC(JAVA MISSON CONTROL)飛行記錄器大法后,發(fā)現(xiàn)線程集中等待...

    khs1994 評(píng)論0 收藏0
  • 社交系統(tǒng)ThinkSNS+ 性能簡(jiǎn)述

    摘要:概述微軟雅黑本文主要描述服務(wù)端系統(tǒng)性能服務(wù)端高性能部署方案及優(yōu)化措施服務(wù)端系統(tǒng)持續(xù)優(yōu)化及升級(jí)策略。部署優(yōu)化微軟雅黑使用,較之前的版本性能提升一倍以上。微軟雅黑開啟,生產(chǎn)環(huán)境應(yīng)該開啟,性能會(huì)有巨大提升。概述 ????????本文主要描述ThinkSNS Plus服務(wù)端系統(tǒng)性能、服務(wù)端高性能部署方案及優(yōu)化措施、服務(wù)端系統(tǒng)持續(xù)優(yōu)化及升級(jí)策略。本文未涉及前端(PC站點(diǎn)、H5站點(diǎn)、Android、IO...

    Hanks10100 評(píng)論0 收藏0
  • 如何安全過渡公共云

    摘要:簡(jiǎn)而言之,公司需要采取主動(dòng)系統(tǒng)的方法,使網(wǎng)絡(luò)安全功能可以適應(yīng)公共云。將開發(fā)運(yùn)維應(yīng)用于網(wǎng)絡(luò)安全如果開發(fā)人員可以在短短幾秒內(nèi)啟動(dòng)服務(wù)器,但必須等待兩周的時(shí)間才能讓安全團(tuán)隊(duì)認(rèn)同配置,這會(huì)削弱公共的云靈活性所帶來的價(jià)值。隨著企業(yè)不斷擴(kuò)大對(duì)公共云的使用,它們必須反思如何保護(hù)數(shù)據(jù)和應(yīng)用程序,并實(shí)施四項(xiàng)關(guān)鍵實(shí)踐。經(jīng)過長(zhǎng)時(shí)間的實(shí)驗(yàn),龍頭企業(yè)正在認(rèn)真考慮大規(guī)模采用公共云。在過去幾年中,很多公司已經(jīng)改變了IT戰(zhàn)...

    Terry_Tai 評(píng)論0 收藏0
  • 云存儲(chǔ)詳解,企業(yè)數(shù)據(jù)該如何上云?

    摘要:年的混合云存儲(chǔ)和應(yīng)用趨勢(shì)報(bào)告顯示,的受訪企業(yè)表示他們正在使用云去進(jìn)行一部分的數(shù)據(jù)存儲(chǔ)。的調(diào)查顯示,的受訪者表示他們正在使用云存儲(chǔ)服務(wù)進(jìn)行歸檔,而的調(diào)查表明,的企業(yè)也在進(jìn)行相同的工作。 Google副總裁Kent Walker曾表示,截止到2000年,人類歷史上存儲(chǔ)的總數(shù)據(jù)量大約只有12EB,但根據(jù)IDC預(yù)測(cè),到2020年全球總數(shù)據(jù)量將激增到40ZB(注:1ZB=1024EB,IEB=1024...

    BlackMass 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<