可持續(xù)發(fā)展的互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計_第1頁
可持續(xù)發(fā)展的互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計_第2頁
可持續(xù)發(fā)展的互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計_第3頁
可持續(xù)發(fā)展的互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計_第4頁
可持續(xù)發(fā)展的互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

可持續(xù)發(fā)展的

互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計傳統(tǒng)產(chǎn)品的架構(gòu)設(shè)計-1.0建立BusinessModelE/R模型O/O模型確立業(yè)務(wù)流程開發(fā)并嚴格測試(采用企業(yè)級Middleware或Framework)5×8運營傳統(tǒng)產(chǎn)品的架構(gòu)設(shè)計-1.0DataLayer重視對象關(guān)系,對象關(guān)聯(lián)性強,數(shù)據(jù)量小數(shù)據(jù)訪問的性能往往通過成熟DB或者硬件配置保證數(shù)據(jù)存儲盡量集中,防止信息孤島EnterpriseMiddlewareOrFramework應(yīng)用服務(wù)器面向標準規(guī)范,易于不同開發(fā)商產(chǎn)品之間打通業(yè)務(wù)邏輯復(fù)雜,耦合性高性能要求不高,日訪問量<1M次WebOrClient大量的表單設(shè)計數(shù)據(jù)關(guān)系復(fù)雜用戶操作復(fù)雜,流程長互聯(lián)網(wǎng)產(chǎn)品的架構(gòu)設(shè)計-2.0建立用戶數(shù)據(jù)用戶模型,確定存儲模型用戶行為模型,確定訪問模型搭建原型系統(tǒng)并簡單測試上線運營--->灰度放量-Online升級7×24運營互聯(lián)網(wǎng)產(chǎn)品的架構(gòu)設(shè)計-2.0DataCacheProxyDataLayerDataLayerDataLayerDataCacheDataCacheLogicLayerOperatingLayer平滑擴容版本升級用戶模型系統(tǒng)模型WebOrClient對象關(guān)系簡單,數(shù)據(jù)量大數(shù)據(jù)訪問的性能往往通過logic層的cache來保證數(shù)據(jù)盡量分散,防止單點造成全員故障網(wǎng)絡(luò)協(xié)議盡量簡單,保證網(wǎng)絡(luò)通信的高效DataCache控制最大化,保證高效的數(shù)據(jù)訪問性能要求高,日訪問量>10M甚至100M用戶行為分析,系統(tǒng)模型分析和延遲故障分析在線設(shè)備擴容和版本升級面向用戶設(shè)計,用戶操作簡單1.0VS2.0以業(yè)務(wù)數(shù)據(jù)為核心確定業(yè)務(wù)流程開發(fā)并嚴格測試1.02.05×8運營(重點解決系統(tǒng)bug)運營與開發(fā)脫節(jié)以用戶數(shù)據(jù)為核心通過用戶模型確定系統(tǒng)模型簡單開發(fā)、簡單測試7×24運營(重點采集數(shù)據(jù)模型)灰度升級在線擴容全新功能全新開發(fā)通過運營數(shù)據(jù)修正用戶模型Fixbug互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計的3個核心可運營用戶模型的采集系統(tǒng)模型的優(yōu)化可管理平滑擴展Online升級可發(fā)展灰度放量持續(xù)迭代互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計的4個概念持續(xù)迭代,化繁為簡海量是什么環(huán)境需要干凈可持續(xù)發(fā)展持續(xù)迭代,化繁為簡20/80原則大系統(tǒng),小做所有的系統(tǒng)通過20/80的原則都可以實現(xiàn)小做再大的系統(tǒng)通過多次20/80可以將復(fù)雜問題變簡單海量是什么用戶模型用戶行為用戶存儲系統(tǒng)模型CPU、Traffic、DiskI/O存儲量海量系統(tǒng)的關(guān)鍵是要用有限的資源最大化的去滿足用戶的需求環(huán)境需要干凈開發(fā)環(huán)境代碼控制測試環(huán)境麻雀雖小,五臟俱全運營環(huán)境發(fā)布工具所有的環(huán)境一定要干凈可持續(xù)發(fā)展力所能及、量力而行StepbyStep,站住點,再發(fā)展1階段2階段3階段迭代迭代發(fā)展發(fā)展重點:產(chǎn)品功能重點:系統(tǒng)性能重點:數(shù)據(jù)運營互聯(lián)網(wǎng)產(chǎn)品架構(gòu)設(shè)計的10個方法基礎(chǔ)篇灰度升級性能過載保護發(fā)展篇平滑擴容Set模型染色機制統(tǒng)一部署提高篇容錯分布柔性控制基礎(chǔ)篇基礎(chǔ)篇-灰度升級灰度升級指定UIN的升級UIN號段的升級(Hash,連續(xù)號段)指定版本的升級版本回退只有有了灰度升級,才能實現(xiàn)系統(tǒng)的快速迭代例子-灰度升級HashServerServerServerServerMod2000=0172.16….172.16….172.16….172.16….Version1.0Mod2000=1172.16….172.16….172.16….172.16….1.1Mod2000=2172.16….172.16….172.16….172.16….1.2Mod2000=…172.16….172.16….172.16….172.16….1.0Mod2000=…172.16….172.16….172.16….172.16….1.3Mod2000=1999172.16….172.16….172.16….172.16….1.0UserVersionServerLegacyServerNewServerLegacyDBServerNewDBServer12345UINServerServerServerServer10001~100000172.16….172.16….172.16….172.16….Version1.130001172.16….172.16….172.16….172.16….1.2數(shù)據(jù)遷移控制用戶升級控制基礎(chǔ)篇-性能性能多進程、多線程不能完全解決系統(tǒng)性能的問題什么樣的系統(tǒng)最快,沒有阻塞的系統(tǒng)最快(即全異步系統(tǒng)最快)高性能是利用有限設(shè)備資源支持海量用戶的基礎(chǔ)例子-性能網(wǎng)絡(luò)處理進程(被連接)網(wǎng)絡(luò)處理進程(連接其他系統(tǒng))邏輯處理進程memorycachediskcacheDatabase時鐘EPOLL異步connectEPOLLChecktimeoutREQRSPREQRSP共享內(nèi)存隊列共享內(nèi)存隊列同步查詢異步查詢異步查詢基礎(chǔ)篇-過載保護過載保護系統(tǒng)自愈能力防止惡意攻擊海量系統(tǒng)中極容易造成“雪球效應(yīng)”雪球的產(chǎn)生無法避免,只要控制了雪球大小,就可以避免“雪崩”例子-過載保護在所有Tcpconnection的地方進行過載保護建立滑動窗口來進行過載保護,滑動窗口為1000個格子,每個格子是100ms內(nèi)的請求數(shù),每次將請求加入相應(yīng)的格子中,進行一次summary統(tǒng)計,如果summary>MAX,那么CCD將拒絕請求,直到summary<=MAX因為Tcpconnection對連接請求的超時控制在60s,Client端超時控制在45s,所以無論是惡意攻擊還是client端訪問超時,都會在100s的格子循環(huán)統(tǒng)計前進行清除MAX的值根據(jù)各個Server的類型進行控制Tcpconnection100ms100ms100ms100ms100msSummary<MAXRequestnum100srequestsummary發(fā)展篇發(fā)展篇-平滑擴容平滑擴容網(wǎng)絡(luò)層的平滑擴容Cache層的平滑擴容存儲層的平滑擴容Online的擴容和平滑升級是系統(tǒng)可持續(xù)發(fā)展的保證例子-平滑擴容將Cache編號劃分10000份,Key%10000來定位Cache,當系統(tǒng)擴容時,首先需要dump出原來cache中需要遷移的數(shù)據(jù),將cache轉(zhuǎn)換到文件中,然后將文件傳遞到新服務(wù)器上,然后將數(shù)據(jù)文件import到內(nèi)存中,最后修改cache的編號由于采用了10000份區(qū)間,所以可以是1/10000的割接逐步放大,所有擴容過程可以自動完成此外可以做得cache的擴容與db擴容無關(guān),所有的擴容與擴容設(shè)備的數(shù)量無比例關(guān)系,系統(tǒng)的模塊與擴容也沒有較強的耦合IDX-Master01234567890123012301101112131415161718192301230123202122232425262728290123012301IDX-Master01234567890123456701101112131415161718192345670123202122232425262728294567012345Cache0Cache1Cache2Cache3FileIDXCache4Cache5Cache6Cache7FileIDX發(fā)展篇-染色機制染色機制用戶操作跟蹤問題定位染色機制使得開發(fā)到運營成為閉環(huán)例子-染色機制因為Transaction為系統(tǒng)的協(xié)議轉(zhuǎn)發(fā)中心,所有的信令請求將會通過它,所有Transaction中將會記錄用戶的操作痕跡Transaction通過QQ號能對用戶的痕跡進行跟蹤TransactionClientServer1Server2Server3Server4Server5Server6Server7Server8Log:BYUINQQ::action1QQ::action2QQ::action3QQ::action4QQ::action5發(fā)展篇-Set模型Set模型邏輯模塊的Set(Proxy,Cache,DB)功能單元的Set(產(chǎn)品功能)用戶數(shù)的Set(PV,在線)“小”系統(tǒng)與“大”系統(tǒng)的本質(zhì)區(qū)別例子-Set模型接入層Set邏輯層SetT-MasterTransactionTransactionDU、IDX、MD5-MasterDownloadUploadFileIDXUserIDXMD5DownloadUploadFileIDXUserIDXMD5CHX-MasterCHXCHX存儲層Set8T一個Set128T一個Set發(fā)展篇-統(tǒng)一部署統(tǒng)一發(fā)布、部署腳步統(tǒng)一Log統(tǒng)一遠程安裝生產(chǎn)環(huán)境、測試環(huán)境、運營環(huán)境一致開發(fā)、測試、發(fā)布、運營流程化的保障提高篇提高篇-容錯容錯Cache的容錯(Binlog)DB的容錯(replication)File的容錯(Cluster)容錯解決了單點問題,容災(zāi)解決了天災(zāi)問題例子-容錯1、定時DumpdirtyNode(10001,20008,30008),由于一塊Cache占1G內(nèi)存,假設(shè)10%為脹數(shù)據(jù),dump次文件需要<5S,可以每天或幾天進行一次2、Log將記錄所有的Update操作和Delete操作,這樣就保證了設(shè)備在異常dump機后,能將cache進行恢復(fù)%10000=020000clean30000clean%10000=1……%10000=999910001dirty20001clean30001clean10008clean20008dirty30008dirty19999clean29999clean39999clean10000clean%10000=020000clean30000clean%10000=1……%10000=999950001clean60001dirty30001clean10008clean20008dirty30008dirty19999clean29999clean39999clean10000dirty%10000=0%10000=

溫馨提示

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

評論

0/150

提交評論