股市動蕩下的雪球架構進化歷程_第1頁
股市動蕩下的雪球架構進化歷程_第2頁
股市動蕩下的雪球架構進化歷程_第3頁
股市動蕩下的雪球架構進化歷程_第4頁
股市動蕩下的雪球架構進化歷程_第5頁
已閱讀5頁,還剩37頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、股市動蕩下的雪球架構進化歷程q?關于雪球,關于我q?雪球總體架構q?雪球架構優(yōu)化歷程q?一些總結和感想大綱q?員工 100+ ,技術人員占一半q?2014.9C輪 $40M by RENNq?Java,Scala,Akka,F(xiàn)inagle,Nodejs,Docker ,Hadoopq?租用IDC機房自建私有云,正在往“公有云+私有云”方向發(fā)展關于雪球q?滬深港美2w+股票q?債券,期貨,基金,比特幣,信托,理財,私募。q?百萬組合,實時調(diào)倉信息q?百萬日活,每天4億API調(diào)用(不算自動輪詢接口)關于雪球q?前新浪微博架構師,微博ID 唐福林q?微博短鏈 q?微博計數(shù)器 redis,redisc

2、ounterq?微博用戶關系服務q?微博穩(wěn)定性、性能改進關于我q?雪球首席架構師,雪球ID 唐福林q?性能,穩(wěn)定性,代碼質(zhì)量改進q?基礎組件,微服務容器建設q?XDC雪球數(shù)據(jù)中心關于我q?關于雪球,關于我q?雪球總體架構q?雪球架構優(yōu)化歷程q?一些總結和感想大綱雪球總體架構q?關于雪球,關于我q?雪球總體架構q?雪球架構優(yōu)化歷程q?一些總結和感想大綱2015年A股大盤走勢q?小 VS 大:q??。盒」镜捏w量,團隊小,機器規(guī)模小q?大:堪比大公司的業(yè)務線數(shù)量,業(yè)務復雜度,瞬間峰值沖擊挑戰(zhàn)q?快速增長q?移動互聯(lián)網(wǎng) + 金融,風口q?A股大盤劇烈波動挑戰(zhàn)q?前端q?Hybrid APP,端到端可

3、用性監(jiān)控q?接入層q?輪詢Server優(yōu)化q?業(yè)務層q?股價提醒,IM 推送,注冊邏輯 優(yōu)化q?雪球App實踐構建靈活、可靠的Hybrid框架q?http:/ 離線H5頁面Hybrid APPq?q?q?q?q?succ or fail : 1 char失敗原因:0 - 1 char請求接口編號: 1 char請求耗時:2 - 3 char其它:網(wǎng)絡制式,etcAPP端可用性監(jiān)控q?移動時代端到端的穩(wěn)定性保障q?每個請求里帶上前一個請求的結果q?開盤期間,每個在線客戶端(包括web)每1秒輪詢一次當前用戶關注的股票的價格變動情況q?Netty + 本地內(nèi)存存儲q?主動更新Quote Serve

4、rq?雪球上熱門股票擁有超過 50w 粉絲(招商銀行,蘇寧云商)q?粉絲可以設置:當這支股票漲幅或跌幅超過 x%(默認7%)時提醒我q?曾經(jīng)連續(xù)3天,每天超過1000股跌停,證監(jiān)會開了一個會,于是接下來2天超過1000股漲停股價提醒性能優(yōu)化q?q?q?1%:uid1,uid22%:uid3,uid4,uid53%:uid6股價提醒性能優(yōu)化(2)q?原來做法:股票漲(跌)x%,掃一遍粉絲列表,過濾出所有符合條件的粉絲,推送消息q?新做法:預先建立索引,開盤期間載入內(nèi)存q?聊天功能:送達率第一q?雪球IM:Netty + 自定義網(wǎng)絡協(xié)議q?Akka: 每個在線client一個actorq?推模式:

5、client 在線情況下使用推模式q?多端同步:單賬號多端可登錄,并保持各種狀態(tài)同步IM 推送性能優(yōu)化q?q?推送功能:瞬間峰值性能第一優(yōu)化q?q?q?q?分配更多資源:推送賬號actor池精簡業(yè)務邏輯:重復消息只存id,實時提醒內(nèi)容不推歷史設備,不更新非活躍設備的Session列表等等本地緩存:拉黑等無法精簡的業(yè)務邏輯遷移到本地緩存優(yōu)化代碼:異步加密存儲,去除不合理的akka 使用IM 推送性能優(yōu)化(2)中國好聲音q?預估廣告播出期間2小時新注冊100萬q?壓測發(fā)現(xiàn) DB 成為瓶頸:q?昵稱檢測 cache miss 40%q?昵稱禁用詞 where like 模糊查詢cache miss

6、80%注冊模塊優(yōu)化q?2015.7.10/17/24q?優(yōu)化:q?redisstore:昵稱,手機號q?本地存儲:昵稱禁用詞insert 操作同步改q?業(yè)務流程優(yōu)化:DB異步注冊模塊優(yōu)化(2)q?合作方合規(guī)要求:業(yè)務單元部署到合作方內(nèi)網(wǎng),用戶的敏感數(shù)據(jù)不允許離開進程內(nèi)存q?業(yè)務本身要求:業(yè)務單元本身為有狀態(tài)服務,業(yè)務單元高可用前置模塊HAq?解決方案:q?HazelcastIn-Memory Data Gridq?replicationmapq?java -XX:+DisableAttachMechanism-XX:-UsePerfData前置模塊HA(2)q?一支股票可能在超過20萬個組合里

7、(南車北車中車,暴風科技)q?離線計算,存儲計算后的結果q?股價3秒變一次,涉及到這支股票的所有組合理論上也需要每 3 秒重新計算一次組合凈值計算性能優(yōu)化q?Akkaq?分級 + 批量q?構建高可用的雪球投資組合系統(tǒng)技術實踐q?http:/ JDK8q?-XX:+ParallelRefProcEnabled -XX:-CMSClassUnloadingEnabledq?ConfigCenter和開關降級通用優(yōu)化q?統(tǒng)一所有clientq?redis, mysql, http, mqq?統(tǒng)一metrics體系q?dropwizard + logback appender通用優(yōu)化(2)q?關于雪球

8、,關于我q?雪球總體架構q?雪球架構優(yōu)化歷程q?一些總結和感想大綱VS 一堆架構各異q?一個單一架構的大服務的小服務總結q?高大上的架構 VS 可以工作的架構q?優(yōu)化到極致 VS 優(yōu)化到可以接受總結q?重寫q?重構q?裱糊匠q?最小改動總結q?數(shù)據(jù)指標!數(shù)據(jù)指標!數(shù)據(jù)指標!q?qpsq?p99q?errorrateq?USEmethod:Utilization,Saturation,error(Velocity 2013, Performance Methodologies for ProductionSystems,Brendan Gregg)總結q?技術棧的一致性和簡單性總結q?能用cache的地方絕不用dbq?能異步的地方,絕不同步總結q?特事特辦:業(yè)務在發(fā)展,需求在變化,實現(xiàn)方式也需要跟著變化總結q?技術人員的自我修養(yǎng):q?知道什么是好的結果q?知道如何去追求好的結果q?能夠給出好的結果感想q?技術方案:q?20倍設計,10倍實現(xiàn),3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論