精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

雪球首席架構師唐福林:雪球服務化實踐歷程

原創(chuàng)
開發(fā) 架構
51CTO高招主辦的“CTO訓練營”活動現(xiàn)場,雪球首席架構師唐福林分享了其公司在面對人員、業(yè)務、流量等膨脹時是如何做的。他表示,這其實痛定思痛或說是反思。雪球的解決方案也并不是很理想,但可以給大家做一個前車之鑒。

服務化的話題在兩三年前很熱,眾多公開場合都在說,最開始是亞馬遜、Twitter,緊接著就是國內(nèi)的淘寶、微博都在談服務化。在這之后,感覺這個話題慢慢趨向過時,之所以有這樣的感覺一是大公司或因人員流動或其他各種關系大家做的服務化都大致相似,二是當下并沒有大量的創(chuàng)業(yè)公司有這樣需求。其實每年都會有一些正在從小到大的成長,這個過程中總會碰到服務化的問題,是繞不過的。

當一些初創(chuàng)公司遇到人員、業(yè)務、流量等膨脹之時,還是需要有類似的解決方案來借鑒。遇到這樣的問題,如何解決,馬上解決還是緩一緩再做。每當這個時候,看淘寶怎么做,微博怎么做其實并不適合初創(chuàng)公司的場景。因為所面臨的問題不一樣,如人數(shù),背景做事方式等都有所不同。在由51CTO高招主辦的“CTO訓練營”活動現(xiàn)場,雪球首席架構師唐福林分享了其公司在面對這個問題的時候是如何做的。他表示,這其實痛定思痛或說是反思。雪球的解決方案也并不是很理想,但可以給大家做一個前車之鑒。

關于雪球,關于唐福林

演講開始,唐福林簡單介紹了雪球的發(fā)展和自身的經(jīng)歷。

雪球,一個聰明的投資者的社區(qū),有Web1.0:新聞資訊,股價信息,K線圖、Web2.0:SNS 訂閱,分享,聊天、Web3.0:移動APP,交易閉環(huán)等業(yè)務,還有非互聯(lián)網(wǎng)業(yè)務,如做資產(chǎn)管理,私募工場,是一個典型的創(chuàng)業(yè)公司。雪球當前員工數(shù)剛好過100,其中技術人員占50%。現(xiàn)在的技術棧由Java,Scala,Akka,F(xiàn)inagle,Nodejs,Docker ,Hadoop組件組成。當前是租用IDC機房自建私有云,正在往“公私混合云”方向發(fā)展。

[[165041]]

唐福林,雪球首席架構師,負責雪球大數(shù)據(jù)體系建設及服務性能與穩(wěn)定架構優(yōu)化工作。曾任微博平臺資深架構師,微博技術委員會成員,深度參與微博快速增長期的性能和穩(wěn)定性問題解決。

雪球服務化歷程

在講雪球服務化歷程之前,唐福林簡單介紹了雪球公司業(yè)務的發(fā)展歷程,如下圖:

服務化歷程之雪球技術發(fā)展

上圖為,以2012年初為基準,雪球的團隊人數(shù),服務個數(shù)和代碼行數(shù)的增長趨勢。

服務化歷程之技術演進

唐福林表示,最初整個雪球服務是在一個大一統(tǒng)的工程里實現(xiàn),內(nèi)部命名為Snowball ,就是滾雪球的意思。 Snowball系統(tǒng)從 2012年到2013年初一直運轉良好。但隨著2013年業(yè)務的膨脹,代碼的增長,團隊的擴張,漸漸出現(xiàn)了很多問題,比如重復代碼,比如代碼不夠規(guī)范,比如測試困難,比如溝通成本越來越高,比如不相干的功能在實現(xiàn)上存在耦合等。

  • 針對業(yè)務膨脹。開始了模塊化改造,將底層基礎模塊抽取成公共庫,做到代碼級的服用;
  • 針對代碼量增長過快。采取了一種在國內(nèi)互聯(lián)網(wǎng)公司不太常見的措施:引入一種描述能力更強的語言 scala。簡單來說,它是一種 jvm 上的混合語言,混合了面向對象編程和函數(shù)式編程兩種方式,它的編譯器其實就是一個 jar 包,源碼會被編譯成跟 java 一樣的 bytecode,然后在 jvm 上運行。在 scala 中,可以無縫的調用絕大多數(shù) java 的庫。scala 語言的描述能力很強,平均下來,同樣的邏輯,scala 語言實現(xiàn)大概會是 java 實現(xiàn)長度的 1/5 到 1/10 的樣子。
  • 針對團隊的擴張。開始推行一種工程師文化:鼓勵大家使用新的更好的技術和工具,鼓勵大家制造更多的工具和輪子,鼓勵大家交流分享。

唐福林在演講中說到:“在那個時候,推行工程師文化的兩個重大結果,一是在線上服務和基礎設施層引入了 scala,二是在基礎設施層引入了 docker 。這兩個決策在現(xiàn)在看來,當時的引入肯定是沒有經(jīng)過深思熟慮的,后來的一路上也是踩了不少坑,當然也付出了很大的時間和精力代價。但是當回過頭去看的時候,還是很慶幸引入了這些基礎設施,它們既幫助雪球完成了功能,方便了部署,也幫助雪球在技術上有了積累,在團隊上有了進步”。

隨著時間的推移,雖然采取了上述一系列的措施,問題有了一定程度的緩解。但隨著業(yè)務繼續(xù)加速膨脹,代碼加速增長,團隊加速擴展,問題還是不可避免的越來越嚴重。這時候雪球到了一個大的關口:流量增長到一定程度,代碼模塊之間開始互相影響,一個模塊的性能問題很快擴散到影響全站訪問,git 分支合并開始頻繁出現(xiàn)沖突,開發(fā)迭代速度明顯受影響。另外一個比較嚴重的問題是,不同的模塊帶進來的第三方依賴偶爾產(chǎn)生沖突,解決起來很麻煩。面對這樣的嚴重的問題,雪球很對采取了進一步的對癥下藥:

  • 對穩(wěn)定性,性能互相影響的問題,標準解法是切分流量單獨部署
  • 代碼合并沖突,第三方依賴的標準解法就是:服務化拆分。

唐福林在演講中說到:“對于像雪球這樣的小公司,服務器不多,服務化拆分后會嚴重增加部署成本,包括線上和測試環(huán)境。針對這個問題,當時采取的辦法是:Docker 容器化。現(xiàn)在大家可能覺得這也是一個標準解法了。但在兩年前,Docker 的版本號還小于 1.0,這樣的選擇,不能不說是具有相當?shù)那罢靶缘?rdquo;。

服務化歷程之服務化框架選擇

做服務化,就面臨一個服務化框架的問題。自己開發(fā)的選項是早早就被放棄了,畢竟公司所有技術人員加起來,都不如淘寶開發(fā) dubbo 的團隊人多。 選一個現(xiàn)有的?因為已經(jīng)引入了部分 scala 業(yè)務代碼,rpc 框架也必須要支持 scala 才行。理論上,所有純粹的 java rpc 框架,scala 也都能用,但是,想要以純粹的 scala 的方式寫代碼的話,調用java方法和處理java的參數(shù),返回值對象的時候,都需要轉一下才行。另外一個考慮因素就是,這個框架必須是開源的,經(jīng)歷過大廠驗證過的。最后,選定了 finagle 。

服務化歷程 - Finagle 介紹

Finagle支持多協(xié)議適配,對 client 端和 server 端來說,它具備標準的連接池,失敗檢測重試,負載均衡,監(jiān)控統(tǒng)計,追蹤,分區(qū) etc。

它的編程模型如下:

  • 所有的客戶端操作都返回一個 Future,也就是說,所有操作都是異步的,可以往 Future 里面放 callback 回調,也可以把多個 Future 串起來。
  • 所有的服務抽象成一個個的 Service:每個 service 的輸入都是接收一個 request,返回都是一個 Future[Response]。
  • 所有的策略實現(xiàn)都是一個個的 Filter,F(xiàn)ilter 是包裝在 service 外面的。

服務化歷程之嘗試、推廣、升級、服務治理、收尾

唐福林表示,F(xiàn)nagle看起來功能強大,又非常符合當時的各種期望。于是,就引入雪球。之后經(jīng)過嘗試、推廣、升級、服務治理和收尾等環(huán)節(jié),直到2015年9月,F(xiàn)inagle架構如下如:

2015年9月 Finagle架構圖

未來與微服務化

當前這個方案最大的問題,還是在于開發(fā)團隊的hold程度,簡單來說,Scala是一門會用不難,會用好還是挺難的編程語言,所以,用它寫業(yè)務邏輯問題不大,但用它來寫基礎設施,那就需要一個精煉的技術小組才能搞定了。而 finagle 呢,Twitter 的那些開源代碼開發(fā)人員,那是相當?shù)撵偶迹械臅r候,團隊里對 finagle 最精通的人,也會忍不住連連贊同。

唐福林演講中說到:“雪球的 scala 技術團隊免不了有一些人員更替,有轉產(chǎn)品的,有轉管理的,有轉去做另外的業(yè)務項目的,導致后面的框架升級和二次開發(fā)力量嚴重不足。加上 finagle 自己迭代速度快,向后兼任又差,整個一個 no zuo no die why you try 的感覺”。于是,唐福林個人花了差不多兩周的時間,做了一個簡單版本 rpc 框架的嘗試。得益于在微博做 motan 框架的經(jīng)驗和教訓,框架開發(fā)很快,開發(fā)出來后,拿給整個技術團隊做討論的時候,才發(fā)現(xiàn)問題很多:再后來,團隊在針對 rpc 框架的接下來需求的討論過程中,越討論越覺得方向有一些偏:大家對基礎設施需求的重點并不是在 rpc 調用框架,而更多在于:大量的小服務,開發(fā)業(yè)務邏輯的便捷性,升級基礎包的便捷性,單節(jié)點的運行狀態(tài),數(shù)據(jù)收集,監(jiān)控報警的便捷性等等。于是,在未來,會把接下來服務化工作的重點定義成:微服務化,具體來說,就是開發(fā)并維護一個滿足雪球自己業(yè)務需要的微服務容器。

思考和教訓

當服務到了一定程度,做服務化是肯定的。但不建議自己做服務化框架,可以找一個比較成熟一點的東西來做。穩(wěn)定性和可用性是一個最重要的工作。做服務化拆分時會引起穩(wěn)定性和可用性下降,更何況如果拆了很多個不同的服務,由不同的人去維護,很容易出問題,所以一定要重視單個節(jié)點的一致性。 可以嘗試新技術,但要保證技術先進性與技術棧一致性。之后,唐福林還從技術深度與技術新鮮度、團隊擴張和成員更替、個人興趣和團隊合作等方面分享了很多寶貴的經(jīng)驗。

在演講最后,唐福林提到了細節(jié)和規(guī)范。他說:“想要用好一個框架,有很多細節(jié)需要仔細注意的。如 finagle 的重試邏輯,跟我們平常說的不太一樣,retry=3 的時候,并不是重試三次,而是加上第一次嘗試,一共三次,也就是說重試2次。 在使用開源框架的時候,首先遵守框架本身的規(guī)范,開源社區(qū)的規(guī)范,然后在這個基礎上,制定自己(小團隊)的規(guī)則,或者叫使用約定。規(guī)則成熟后,最后形成固定的(公司大團隊)的規(guī)定。”

了解更多訓練營內(nèi)容:http://x.51cto.com

責任編輯:王雪燕 來源: 51CTO
相關推薦

2012-08-13 16:48:31

架構師

2018-06-06 10:50:18

容器開源

2018-09-17 08:31:08

容器Docker雪球

2009-12-18 10:22:50

Ray Ozzie架構師

2018-03-23 17:35:21

WOT2018董明鑫Docker

2010-04-20 09:18:00

架構師

2012-03-21 17:30:21

百度架構師

2012-08-04 16:02:00

架構師

2013-12-06 09:49:39

2011-03-11 15:38:08

Java

2017-04-16 00:26:34

融云直播互動系統(tǒng)

2017-06-01 09:34:53

公有云數(shù)據(jù)遷移

2014-10-28 09:56:56

Hadoop

2010-03-02 09:44:32

首席架構師趙亮

2010-10-19 10:39:45

鮑爾默軟件架構師

2017-06-04 23:39:16

TiKVC++Rust

2016-08-29 11:33:23

京東云云計算云安全

2015-05-06 14:23:55

2012-08-17 18:13:55

架構師

2022-08-29 09:14:01

戰(zhàn)略設計核心域支撐域
點贊
收藏

51CTO技術棧公眾號

日韩大尺度视频| 欧洲亚洲一区二区| 国产精品日日夜夜| 国产免费久久| 日韩欧美一级精品久久| 国产精品va无码一区二区| www.亚洲资源| www.亚洲人| 91深夜福利视频| 久草视频一区二区| 国精品一区二区| 色悠悠久久久久| 欧美一级片黄色| 精品视频在线观看免费观看| 午夜精品久久久久久久99樱桃| 亚洲看片网站| 亚洲色图21p| www久久久| 亚洲欧美日本视频在线观看| 亚洲欧美日本精品| 香蕉视频在线观看黄| 欧美最新精品| 婷婷丁香激情综合| 亚洲精品少妇一区二区| 成人高清免费观看mv| av在线综合网| 99久久无色码| 97精品久久人人爽人人爽| 免费视频一区二区三区在线观看| 色综合久久中文字幕综合网小说| 四虎国产精品成人免费入口| 都市激情久久| 欧美成人bangbros| 男女视频在线观看网站| 成人高清一区| 91黄色免费看| 能看的毛片网站| 在线观看爽视频| 精品露脸国产偷人在视频| 国产玉足脚交久久欧美| 午夜激情在线| 亚洲精品中文在线观看| 免费成人进口网站| 黄色片网站在线| 国产精品久久精品日日| 色999五月色| a天堂中文在线| 欧美高清在线视频| 亚洲精品在线免费看| av在线中文| 国产精品三级视频| 中文字幕一区二区三区最新| 98在线视频| 国产精品家庭影院| 中文字幕av导航| www红色一片_亚洲成a人片在线观看_| 国产精品久久久久一区二区三区 | 成午夜精品一区二区三区软件| 8x福利精品第一导航| 污视频网址在线观看| av一级久久| 欧美成人在线直播| 人妻av一区二区| 婷婷亚洲精品| 亚洲天堂av网| 亚洲欧美精品久久| 中文字幕免费一区二区三区| 欧美黑人性视频| 日韩在线观看第一页| 欧美专区在线| 国产一区二区色| 精品国产999久久久免费| 国产高清在线精品| 久久国产精品精品国产色婷婷| 亚洲 精品 综合 精品 自拍| 久久久精品天堂| 在线观看免费91| 不卡av免费观看| 一本高清dvd不卡在线观看| 日韩免费高清在线| 国产精久久久| 日韩激情在线视频| 亚欧精品视频一区二区三区| 综合久久综合| 日韩免费观看在线观看| 国产精品久久久国产盗摄| 国产成人在线影院| 青青成人在线| 菠萝蜜视频国产在线播放| 亚洲h精品动漫在线观看| 九九热在线免费| av毛片精品| 国产亚洲免费的视频看| 久久久久人妻一区精品色欧美| 久久久久久穴| 97久久天天综合色天天综合色hd | 日本中文字幕在线观看视频| 极品美女销魂一区二区三区免费| 国产精品免费一区二区三区观看| 国产精品免费播放| 亚洲福利电影网| 亚洲免费一级视频| 欧美挤奶吃奶水xxxxx| www日韩欧美| 国产精品久免费的黄网站| 国内不卡的二区三区中文字幕| 国产伦精品一区二区三区| 幼a在线观看| 午夜精品视频一区| 亚洲第一成肉网| 国产免费播放一区二区| 久久免费视频在线观看| 91国内精品久久久| 国产视频一区在线播放| 国产精品12345| 麻豆精品一区| 中文字幕无线精品亚洲乱码一区 | 亚洲欧洲在线播放| 伊人国产在线观看| 激情成人综合网| 亚洲va久久久噜噜噜久久狠狠| а_天堂中文在线| 91精品国产aⅴ一区二区| 日本人亚洲人jjzzjjz| 国产亚洲精品bv在线观看| 91青青草免费观看| 亚洲成a人v欧美综合天堂麻豆| 婷婷成人激情在线网| 特级特黄刘亦菲aaa级| 天堂网在线观看国产精品| 国产精品都在这里| 国产在线观看黄| 色哟哟精品一区| 草草地址线路①屁屁影院成人| 国色天香一区二区| 999在线观看免费大全电视剧| 一广人看www在线观看免费视频| 狠狠做深爱婷婷久久综合一区| 精品人妻在线视频| 亚洲国产精品第一区二区| 91久久国产自产拍夜夜嗨| 国产在线观看a| 777亚洲妇女| 超碰手机在线观看| 国产精品99久久久久久宅男| 中文字幕一区二区三区乱码 | 五月天激情在线| 日韩欧美精品在线视频| 91在线播放观看| 国产成人综合在线| 欧美乱做爰xxxⅹ久久久| 日韩一二三区| 久久久久久久电影一区| 欧美特黄一级视频| 福利一区视频在线观看| 艳妇乳肉亭妇荡乳av| 国产精品综合色区在线观看| 久久99欧美| 亚洲综合在线电影| 国产亚洲欧美一区| 91精品国产乱码久久久| 国产精品视频在线看| 欧洲美女亚洲激情| 亚洲激情欧美| 欧美在线日韩精品| 免费视频观看成人| 欧美黑人又粗大| 亚洲色欧美另类| 欧美在线制服丝袜| 久久久久亚洲av片无码| 高清视频一区二区| 日韩精品无码一区二区三区免费| 成人羞羞网站入口| 91色中文字幕| 黄在线观看免费网站ktv| 亚洲另类图片色| 亚洲专区在线播放| 亚洲电影第三页| 波多野结衣一二三四区| 国产麻豆视频一区| 国产99久久九九精品无码| 精品久久久久久久| 91精品综合久久| 中文日产幕无线码一区二区| www.亚洲成人| 水莓100在线视频| 欧美日韩成人激情| 日韩毛片在线播放| 国产精品国产馆在线真实露脸| wwwww在线观看| 天堂影院一区二区| 男女裸体影院高潮| 精品色999| 国产高清一区视频| www.26天天久久天堂| 国产最新精品视频| 国内精品不卡| 亚洲欧美日韩国产精品| 精品人妻久久久久一区二区三区| 欧美日韩一区二区三区在线免费观看| 国产极品美女在线| 国产视频一区不卡| 性欧美丰满熟妇xxxx性久久久| 蜜臀av性久久久久蜜臀aⅴ| 六月婷婷在线视频| 香蕉视频国产精品| 日韩精品一线二线三线| 91综合久久爱com| 成人黄色免费网站在线观看| 91精品产国品一二三产区| 欧美日韩第一页| 黄视频网站在线| 日韩高清欧美高清| 精品久久国产视频| 欧美喷水一区二区| 乱子伦一区二区三区| 天天av天天翘天天综合网色鬼国产 | 欧美jizz19性欧美| 亚洲最大av在线| 欧美成人一二区| 国产精品久久久久久久久久小说| 超碰在线99| 欧美黄色片视频| 中文字幕有码在线观看| www.久久久久久.com| 国产日本在线视频| 亚洲天堂2020| 国产区视频在线| 亚洲性69xxxbbb| 蝌蚪视频在线播放| 亚洲欧美另类国产| 九色视频在线播放| 亚洲人成欧美中文字幕| 午夜国产在线视频| 亚洲精品www久久久久久广东| wwwav网站| 日韩一区二区三区电影| 国产精品亚洲lv粉色| 欧美伦理视频网站| 国产在成人精品线拍偷自揄拍| 欧美三级视频在线观看| 探花国产精品一区二区| 欧美综合亚洲图片综合区| 91视频在线视频| 欧美羞羞免费网站| 在线免费观看日韩视频| 欧美日韩国产高清一区二区| 一级黄色大片免费| 7777精品久久久大香线蕉| 一区二区小视频| 欧美一区午夜精品| 亚洲AV午夜精品| 亚洲第一av网| 亚洲av成人精品毛片| 日韩精品免费在线| 国产精品二线| 久久精品亚洲94久久精品| av软件在线观看| 久久久午夜视频| 在线观看网站免费入口在线观看国内| 日本高清视频一区| 嫩草伊人久久精品少妇av杨幂| 国产精品亚洲网站| 成人豆花视频| 国产女主播一区二区| 日韩高清成人在线| 亚洲欧美电影在线观看| 影音先锋日韩精品| 免费看的黄色大片| 轻轻草成人在线| 中文字幕人妻无码系列第三区| 国产91在线观看| 国产ts丝袜人妖系列视频| 欧美国产日韩一二三区| 丁香花五月激情| 日韩欧中文字幕| 国产精品欧美综合亚洲| 精品成人免费观看| 国产专区在线| 欧美成人黄色小视频| 国产传媒在线| 国产精品一区二区三| 澳门久久精品| 日韩欧美亚洲在线| 亚洲视频狠狠| 在线观看免费的av| 91一区二区三区在线播放| 欧美自拍偷拍网| 亚洲成人免费观看| 亚洲视频在线免费播放| 精品日韩99亚洲| www.av在线播放| 久久男人av资源网站| 成人精品三级| 国产在线精品一区二区中文| 日韩不卡一区| 国产91在线免费| 国产精品1区二区.| 摸摸摸bbb毛毛毛片| 亚洲一区二区三区四区不卡| 凹凸精品一区二区三区| 亚洲第一中文字幕在线观看| 尤物视频在线免费观看| 91av福利视频| 538任你躁精品视频网免费| 日本一区二区三区视频在线播放| 激情婷婷亚洲| 日本成人xxx| 中文字幕欧美区| 日本a级c片免费看三区| 精品国产一区二区三区久久影院| av中文资源在线| 热99在线视频| 欧洲精品一区| 日韩精品一区二区免费| 久久福利视频一区二区| 人妻少妇一区二区| 岛国精品视频在线播放| 亚洲国产精品久久人人爱潘金莲 | 日韩成人黄色av| 色噜噜狠狠狠综合欧洲色8| 国产精品日韩欧美综合| 五月天亚洲一区| 欧美又粗又长又爽做受| 国产乱码精品一区二区三区av| 懂色av粉嫩av浪潮av| 色www精品视频在线观看| 色久视频在线播放| 91国语精品自产拍在线观看性色| 亚洲三区欧美一区国产二区| 欧美亚洲视频一区| 久久成人av少妇免费| 亚洲一区 欧美| 欧美三级电影一区| av资源网站在线观看| 国产精品一久久香蕉国产线看观看| 亚洲欧洲av| 黑森林福利视频导航| 92国产精品观看| 青青草免费观看视频| 日韩精品视频观看| 精品国产第一福利网站| 欧美一区二区三区四区在线观看地址 | 久久久久久毛片免费看| www.亚洲视频.com| 成人国产亚洲欧美成人综合网 | 一区免费视频| 久久久久国产精品无码免费看| 亚洲成av人片在线| 肉丝一区二区| 国产精品成人久久久久| 欧美日韩色图| 鲁一鲁一鲁一鲁一av| 国产精品久99| 亚洲第一天堂影院| 91成人免费观看网站| 亚洲+小说+欧美+激情+另类| 无码aⅴ精品一区二区三区浪潮| 久久精品亚洲麻豆av一区二区| 69视频免费看| 久久人人爽人人爽人人片亚洲| 久久久久久91| 国产色无码精品视频国产| 一二三区精品视频| 欧美视频久久久| 日韩av成人在线| 久久精品高清| 日本女人性视频| 欧美日韩精品在线视频| 国产天堂在线| 亚洲xxxx18| 国产亚洲精品久久久久婷婷瑜伽| www.狠狠爱| 欧美精品日韩一本| 国产丝袜视频在线播放| 欧美一进一出视频| 精品亚洲免费视频| 久久久久久久久久影院| 在线日韩日本国产亚洲| 精品欧美视频| www.日日操| 亚洲制服欧美中文字幕中文字幕| 午夜18视频在线观看| 国产欧美精品一区二区| 欧美日韩国内| 欧洲美熟女乱又伦| 欧美成人精品福利| 第四色男人最爱上成人网| 视频一区二区视频| 久久香蕉国产线看观看99| 国产又粗又猛又黄| 97超级碰在线看视频免费在线看| 成人免费a**址| 这里只有精品在线观看视频| 欧洲精品在线观看| 91九色在线播放| 一区二区在线观| 91麻豆免费观看| а√天堂资源在线| 国产一区二区在线播放|