分佈式追蹤系統調研

       一套大型的完整系統由以百計的分佈式服務系統組成,每個請求路由進來,會通過多個業務系統並留下足跡,併產生對各類DB和cache的訪問,可是這些分散的系統對於排查問題,或是流程優化都有限。對於這類跨進程的場景,彙總收集並分析海量日誌就先到尤其重要。app

       要作到追蹤每一個請求的完整調用鏈路,收集調用鏈路上每一個服務的性能數據,計算性能數據和對比性能指標(SLA),甚至在更遠的將來反饋到服務治理中,那麼這就是服務治理的目標。分佈式

       業界中,淘寶的鷹眼和twitter的zipkin就是相似的系統,這些系統都起源於Google的dapper.性能

       整理一下,Google叫Dapper,淘寶叫鷹眼,Twitter叫ZipKin,京東商城叫Hydra,eBay叫Centralized Activity Logging (CAL),大衆點評網叫CAT,咱們叫Tracing。優化

       分佈式調用鏈追蹤系統一般有幾個設計目標:設計

 1.低入侵性,做爲非業務組件,應該儘量的少的侵入業務系統,對於使用方透明,減小開發人員負擔。日誌

 2.靈活的應用策略,能夠決定所收集數據的範圍和力度。進程

 3.從數據的收集和產生,到數據計算和處理,再到最終展示,都要儘量的快。ip

 4.決策支持,這些數據是否在決策支持方面發揮做用,特別是從DevOps的角度。ci

 5.可視化纔是重中之重。路由

相關文章
相關標籤/搜索