淘寶王琤:Taobao JVM的性能優勢與價值體現
原創【51CTO專訪】北京時間2012年12月4日Velocity China 2012 Web性能與運維大會在北京召開,在會中51CTO記者有幸采訪到了阿里集團的王琤老師,王琤老師主要負責淘寶JVM的開發工作,基于OpenJDK VM 為淘寶定制、優化更加貼近應用需求的專用JVM。而在此次Velocity大會上,王琤老師主要為大家分享了《淘寶 JVM 優化實踐》。也借此機會,51CTO編輯針對淘寶JVM這個話題跟王琤老師進行了一些溝通,分享給大家。
王琤(長仁)(右)正在與記者探討
以下是采訪內容:
51CTO:王老師您好,很多關心JVM技術的人都知道淘寶推出了開源的優化定制JVM版本:Taobao JVM,那么和Oracle官方的JVM版本相比,在性能上有哪些優勢?
王琤(長仁):一提到淘寶JVM,大家肯定是關心性能,,性能是大家直觀感受到的不同。從性能上來說由于Taobao JVM經過優化定制和官方版本相比在性能上有所提升。對于具體應用來說,根據很多應用特殊的性能需求我們有相應的優化點,比如剛才講的我們有很多的Intrinsic,這是在oracle官方版本里不可能做的,因為這些需求不是很通用。對于hotspotvm它更關注更加通用化的性能改進。而淘寶JVM更貼近淘寶的Java應用,我們可以接觸到一線的性能需求,根據這些需求進行優化。所以淘寶jvm的性能提升的幅度在剛才PPT里面大家可以看到,會很有優勢。這不是說我們做的比Oracle好,而是說我們更貼近于用戶需求,我們按特定需求做一些特定的優化.一定會比通用的優化更好,這點是我們最有優勢。
51CTO:在這個開源項目上,您主要負責哪些工作?
王琤(長仁):我主要是負責專用計算組,我們開始做taobao JVM的時候只有我一個人,那是我剛剛來到淘寶的時候開始。大家有需求說我們淘寶以前對JVM的工作其實只能停留在參數調優,深入的去改它之前沒有做過。我是因為來自Oracle,對于這方面接觸過一些,所以我們就成立了這個組來專門的做taobao JVM,現在我們組的一部分同學在做taobao JVM,另外一部分在做專用計算的工作。
對于淘寶jvm這個項目,我的老板---章文嵩博士最早提出來要做這塊,并且給予了很大的支持,他算是最初發起人。這個工作是淘寶需要的,因為淘寶是Java技術的最大應用方,是非常需要自己定制的JVM的。
51CTO:從JVM優化、定制及相關工具開發,有沒有遇到哪些問題?您是如何去解決這些問題的?能否給網友分享下?
王琤(長仁):其實遇到的問題非常多,最大的問題還是人的問題。因為剛才講到JVM的社區是非常小的,這部分的工作沒有人很熟悉它,也因為社區太小,做這個東西的人很少。因為這點,所以相關的人才很難找到。這個最大的問題也就解釋了為什么我們從一開始做到成果大規模應用經歷了近2年的時間,在這么長的時間里主要的工作其實就是在培養人才。我們組的絕大部分同學其實都是應屆的畢業生,從應屆畢業生就開始培養,經過近3年培養,他們在這個領域已經做的很不錯了。所以最大的問題還是在人的問題,而不在于技術本身。人才的培養我覺得環境很重要,像我們阿里集團的核心系統部,這個環境就是一個非常好的環境。可能對于一位應屆生來說,他可能剛來的時候是一張白紙,當然在這么一個技術氛圍非常濃重的環境里他可以快速成長,只要他自己努力就會成長的非常好。的團隊,。來到這里的應屆畢業生在2-3年的鍛煉能達到這個水平已經是非常好的了。有的同學經過他自己的努力、興趣并在我們這個環境里不斷磨練,已經跳到美國OracleJVM團隊參與JVM核心的開發工作。昨天正明(章文嵩博士)講到我們在向Oracle輸出人才,這一方面肯定了我們的工作,當然對于我們來說其實是好事也不是好事。所以環境是比較重要的,就是說你在這個環境里頭會非常快速的成長。當然也借助這個機會希望更多有興趣的同學能夠加入到我們這個環境來做更多的事情。
51CTO:從淘寶,天貓全部替換了Oracle官方的JVM版本后,您覺得淘寶JVM的價值主要體現在哪方面?
王琤(長仁):線上很多已經替換了Oracle官方版本,價值主要體現在對應用方從心理上來說他們更加放心了。因為以前的時候JVM出問題,很難得到Oracle的支持。我們在Oraclebugdb上提Bug的時候反饋很不及時。現在用了我們的jvm話,我們組就會幫助他們解決問題,并且會專門為他們的需求來做一些JVM相關的工作,他們就覺得非常的放心。我們可能不用刻意關注具體的,比如性能,指標,功能點這些,單單從這一點來說其實大家就愿意來用我們的東西,因為更貼近他們,而且我們的服務很好。對于應用來說我們基本上都是面對面的上門服務。
51CTO:是否開放共享?
王琤(長仁):對,我們到現在所有的patch都在我們的jvm.taobao.org上,所有同學都可以到上面把patch抓下來。我們貢獻出來讓大家一起用,同時也希望大家參與到其中,做一些貢獻。開放是淘寶一個很重要的基因,,我們不僅僅是有JVM的開源,淘寶還開源了淘寶的linux kernel,MySQL,tengine,還有很多很多的應用都開源。
51CTO:淘寶Hadoop集群在淘寶內部有個美麗的名字叫“云梯”,從您認識“云梯”并從事優化工作后,您覺得淘寶當初選擇Hadoop的主要原因是什么?
王琤(長仁):“云梯”我的了解也有限,我感覺阿里用云梯最主要的原因就是看到了它開源的基因,它的龐大應用群以及活躍的社區。這個基因很重要,就是說它是一個開放的系統,它的社區很活躍,它的用戶很多,有像facebook,yahoo,這些公司的開發者共同在這社區里面參與hadoop的工作,,我們也是參與者,我們的益處就是我們可以分享很多別人的工作成果,同時對它有貢獻。其實我們的成本很低的,很合算。而且hadoop在阿里的整個離線分析,離線計算里面做出了很多的工作,實際上我們現在“云梯”的整個系統負荷挺高的,下面跑的作業也非常的多,非常的關鍵,很好的體現了它的價值。所以我感覺我們選擇hadoop的最主要原因是它的開放性,他很好的解決了我們的問題,同時我們可以跟眾多的開發者一起讓它變得更好。
【責任編輯:小林 TEL:(010)68476606】