繼續觀看eBay的技術發展

          HPTS大會上,Randy Shoup放出的eBayPPT有所改變,在原有的5Architectural Lessons上又增加了5lesson,從這也可以一定程度的看出當訪問量、數據量、功能不斷上漲后,碰到的技術問題也將繼續發展,想必這也是eBay增加5lessons的原因,eBay在技術方面的發展對很多互聯網公司都有一些參考意義,畢竟它已經經歷過了國內很多網站目前的階段甚至是幾年后的階段,在本篇blog中就完整的來看看eBay的這10lessonseBay的應對策略以及我個人的一些推測。

          1、  Partition Everything

          這點是現在各家互聯網都使用的招,說白了也很正常,畢竟一個網站通常要提供很多功能,如果都部署在同一臺機器上,隨著水平伸縮,后端的資源肯定會呈現不夠用的現象,這個時候能采用的方法自然是分,分開后自然一臺能夠支撐的量也會更高,同時后端資源的壓力也會減小。

          當然,要做到這點其實并不容易,eBay應對的策略為:按功能水平劃分應用、按功能水平劃分數據庫、按其他原則垂直劃分表,涉及到的技術有:劃分之后應用的交互的解決以及數據訪問層(DAL)。

          這點基本是現在互聯網公司的必備技能。

          2、  Asynchrony Everywhere

          同步的交互會帶來強耦合,可用性方面保障就比較困難了,因此盡可能的采用異步。

          在這點上,eBay的應對策略為:事件驅動和pipeline、多播消息,涉及的技術為:消息中間件(無序、至少一次到達)、基于SRM技術的可靠多播。

          這點基本也是現在互聯網公司的必備技能。

          3、  Automate Everything

          這點eBay比較強,中國的互聯網公司不知道有幾家能做到,J,其中有一點和twitter那個PPT提到的差不多,就是配置信息的動態化,這個確實非常重要。

          要做到這些方面,會涉及的技術有:配置發布/訂閱機制的實現、機器學習。

          有些其他強大的東西eBay在這里也沒提,例如部署系統。

          4、  Remember Everything Fails

          這點很多公司都做,但從PPT來看,估計很少有公司能做到eBay這個地步,J,尤其是eBay的優雅降級,twitter公布的PPT中也有類似的內容,國內公司還得努力,呵呵。

          eBay的應對策略為:異常后發消息、有相應的消息訂閱者接收這些報警信息、按功能實現降級,保障核心功能的可用性,涉及的技術有:消息中間件、如何實現按功能降級。

          5、  Embrace Inconsistency

          這點對于互聯網公司來說非常重要,事務過多,性能就狂降了,尤其是Partition everything后,分布式事務需求產生,就更要注意了,因此eBay的應對策略為最終一致,涉及的技術有:消息中間件、CAP等。

          以上5lesson是很早以前eBay PPT中就一直有的,而以下5點則是第一次出現在eBayPPT中,從中也可以一窺隨著網站的發展帶來的技術挑戰。

          6、  Expect (R)evolution

          這里eBay講到的主要是如何更好的應對變化,這包括了功能演變、架構演變,eBay的應對策略為:靈活的schema、可插拔的處理流程以及增量的系統發布,這方面的技術還是相當復雜的,eBay采用的是:配置化處理流程、系統發布過程支持多版本共存。

          這點要做到真的不容易,看來eBay已經碰到了發布必須增量發的問題了。

          7、  Dependencies Matter

          這點隨著Partition everythingAsynchrony everywhere執行,以及功能的不斷增加后,就會變得比較明顯,想必eBay也是如此。

          他們的應對策略:服務拓撲管理、設計上的控制(只允許依賴)、客戶端承擔責任。

          說到這點,不得不說下,客戶端承擔責任這點其實真的很重要,現在很多架構都喜歡放在服務端上解決N多問題,但很多場合確實有必要放到客戶端去做,當然,這也會帶來一些問題,例如升級等。

          8、  Be Authoritative

          這點沒看明白。

          9、  Never Enough Data

          看的也不是很明白,我理解下來意思也許是數據肯定是會一直增長的,因此要考慮可伸縮的內存保存以及持久存儲產品,英文寫的就是large-scale distributed storage

          10、              Custom Infrastructure

          同樣沒看明白,感覺就是要做到充分發揮機器資源,從eBaySLA來看,莫非是要開始做云計算了,J

           

          總結來說,eBay也是首先解決如何做到基于水平伸縮支撐大訪問量、大數據量的問題,然后則是開始步入如何管理以及保障好如此大的應用的關系、可用性等。

          ps: 之前那篇《旁觀者看eBay技術發展》的bloghttp://www.aygfsteel.com/BlueDavy/archive/2009/07/24/288055.html

          posted on 2009-11-16 17:19 BlueDavy 閱讀(7267) 評論(5)  編輯  收藏 所屬分類: Internet

          評論

          # re: 繼續觀看eBay的技術發展 2009-11-16 18:26 wangajing

          雖然不懂,但是依然要頂一下。  回復  更多評論   

          # re: 繼續觀看eBay的技術發展 2009-11-16 20:30 heyang

          活到老學到老。  回復  更多評論   

          # re: 繼續觀看eBay的技術發展 2009-11-20 17:56 Fenng

          其實一點意思都沒有,完全是重復內容。我前幾天看到PPT都沒有寫評論的欲望了。

          eBay 技術不折不扣的在走下坡路  回復  更多評論   

          # re: 繼續觀看eBay的技術發展 2009-11-23 10:11 cloudward

          都是有價值內容,但是理解并不容易。每個網站的解決辦法都在細節上有差異,在大的方面其實殊途同歸。  回復  更多評論   

          # re: 繼續觀看eBay的技術發展[未登錄] 2011-04-02 15:15 frank

          @cloudward
          頂  回復  更多評論   

          公告

           









          feedsky
          抓蝦
          google reader
          鮮果

          導航

          <2009年11月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          統計

          隨筆分類

          隨筆檔案

          文章檔案

          Blogger's

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 涿鹿县| 灵武市| 鱼台县| 闵行区| 博野县| 龙井市| 望都县| 平利县| 陇西县| 泽州县| 桂林市| 清原| 汝城县| 台东县| 庆云县| 新安县| 丽江市| 茶陵县| 晴隆县| 泾源县| 德江县| 华宁县| 安康市| 万宁市| 南漳县| 双鸭山市| 辽阳县| 岑巩县| 广安市| 江永县| 运城市| 小金县| 惠东县| 乐平市| 彰武县| 蓬莱市| 米脂县| 兴城市| 常宁市| 广河县| 石河子市|