“MosseFS和redis架構是最近比較熱門的話題,百度在MosseFS和redis海量存儲下進行架構改進和性能提升的關鍵在于優化升級與細節把控。”4月19日,百度運維部MFS組技術負責人,負責分布式文件系統MFS和分布式KV系統BDRP的二次開發維護的程一仕在第49期百度技術沙龍現場上說。
MosseFS和redis架構其實和hdfs的架構是一樣的,它們都是google file system。本期百度技術沙龍,程一仕老師主要為大家分享了百度技術團隊圖和通過對MooseFS的單點master的架構升級來提升系統的性能和擴展性,進而支撐百度的眾多業務。
本期恰逢百度技術沙龍4周年。4年來,百度技術沙龍一直致力于以“技術開放”的心態,分享行業領先的技術理念和技術實踐。秉承“暢想、交流、爭鳴、聚會”的理念,為互聯網工程師、軟件開發者提供一個快速學習和不斷成長的平臺。
百度技術沙龍四周年詳解:高效架構大規模分布式存儲
百度運維部MFS組技術負責人程一仕說:“百度有共有集群,很多小產品線都會上來,我們做流量控制的初衷,是因為我們要防止一個產品線變得亂七八糟。”
獨立開發架構 百度高度優化MosseFS和redis
在本期技術沙龍上,程一仕先向大家介紹了MosseFS和redis目前架構上出現的問題:一個是性能瓶頸,因為這個設計是非常強中心化的設計,它是分布式系統里面的狀態,因此它的性能其實是非常耗的。另一個是錯誤處理,即擴展性問題。基于這兩個問題,程一仕詳細講解了百度在MooseFS和redis下進行的改進和性能提升。
“我們做的第一個改進就是開發一個Shadow master,這個架構的設計是master會處理所有的寫請求,shadow master會處理大部分的請求,它的變更不一定到master。為了避免沒有請求,我們還在客戶端做了一個簡單的路由,路由的策略全部到master。”程一仕表示。
據程一仕介紹, 基于這個架構,理論上,master承擔每秒10個萬請求,shadow master能承擔2萬左右。而實際上master每處理10萬個請求的話,shadow master可以處理7萬到8萬,也就是說整個服務的請求,shadow master可以分到40%之多。
對于第二個錯誤處理的問題,為了解決這個問題,程一仕和他的團隊做了Slave,它主要負責在故障出現的時候做切換去接管整個集群。
“最開始的時候整個架構就是這樣的,我們后面加了shadow master。后面又加了一個slave的東西,去做強一致的替換,我們在master上面做了一些工作。”程一仕解釋道。
細節決定一切 解決方案時不要怕“坑”
程一仕強調:“百度使用redis的代理中間層構建高可用的分布式redis集群來滿足產品的低延遲以及大數據量的業務需求。這兩個系統廣泛應用于百度商業產品體系,LBS產品體系,數據庫文件熱備等在線業務,并支撐大量關鍵服務。”
在分享即將結束時,程一仕還跟大家分享了他的一些感悟,他強調,細節決定著一切,“分布式存儲的架構沒有什么變化,最重要的就是它的細節,它的細節非常麻煩,也非常多,一個處理不好,就會讓一個集群掛掉。一個處理流程太長,這些東西在我個人看來沒有什么很好的辦法,只有不斷的踩”坑“,所以我覺得需要在細節上面需要注意很多問題。”
百度技術沙龍四周年詳解:高效架構大規模分布式存儲
程一仕強調細節非常重要。
另外, 程一仕鼓勵大家在解決方案時不要“坑”。“我們覺得開源軟軟件很坑,是因為它沒有資料。當你覺得坑的時候,你了解為什么坑,而不要只是說系統掛掉了,為什么掛,我也不知道,只是讓你看代碼,很多開源軟件只有一萬行或者是兩萬行,你看一個月就能夠搞的非常清楚了,它有坑你就把它修掉。”
一位參加此次沙龍的觀眾表示,對于noSql,他是最近才去了解的,“我對于解決方案操作還不夠熟練,聽完陳老師的講課后,很有收獲。”這位觀眾說。
歷時四載 百度技術沙龍廣受追捧
本期技術沙龍恰好是百度技術沙龍4周年,現場很多聽眾都通過微博或微信為百度技術沙龍送上了祝福。主辦方也為大家準備了50寸的大蛋糕共同慶生。
現場除了主講的程一仕老師和陳偉老師,百度技術沙龍上海站講師,曾在第43期百度技術沙龍亮相的陳曄老師也從上海趕來為百度技術沙龍慶生。
百度技術沙龍四周年詳解:高效架構大規模分布式存儲
程一仕、陳偉和上海講師陳曄共同揭開慶生蛋糕。
微信用戶朱秋旭表示,和百度技術沙龍共同成長的日子里他收獲了很多。微信網友mobei則表示“希望百度技術沙龍繼續堅持下去,成為工程師們的精神家園 。”
在技術沙龍結束后,現場很多人都感到意猶未盡。他們紛紛添加百度技術沙龍的官方微信,并主動找程一仕交流大規模分布式存儲的核心技術和原理。
百度技術沙龍是百度每月組織的一項技術開放交流活動,至今已經連續舉辦了4年,總共49期。百度技術沙龍一直致力于以“技術開放”的心態,分享行業領先的技術理念和技術實踐。這種變革與分享、踐行技術開放的行動得到了業內人士的廣泛認可,目前北京的技術人員已經把百度技術沙龍當成了自己的精神家園。百度技術沙龍也希望日后能夠有效推動中國互聯網的技術發展與行業創新。