一、服務追蹤做用網絡
1)優化系統瓶頸:經過記錄調用通過的每一條鏈路上的耗時,咱們能快速定位整個系統的瓶頸點在哪裏app
2)優化鏈路調用:經過服務追蹤能夠分析調用所通過的路徑,而後評估是否合理。好比一個服務調用下游依賴了多個服務,經過調用鏈分析,能夠評估是否每一個依賴都是必要的,是否能夠經過業務優化來減小服務依賴。優化
3)生成網絡拓撲:經過服務追蹤系統中記錄的鏈路信息,能夠生成一張系統的網絡調用拓撲圖,它能夠反映系統都依賴了哪些服務,以及服務之間的調用關係是什麼樣的spa
二、原理ip
經過一個全局惟一的 ID 將分佈在各個服務節點上的同一次請求串聯起來,從而還原原有的調用關係,能夠追蹤系統問題、分析調用數據並統計各類系統指標it
能夠說後面的誕生各類服務追蹤系統都是基於 Dapper 衍生出來的,比較有名的有 Twitter 的Zipkin、阿里的鷹眼、美團的MTraceio
traceId :是用於串聯某一次請求在系統中通過的全部路徑原理
spanId: 是用於區分系統不一樣服務之間調用的前後關係美團
annotation: 是用於業務自定義一些本身感興趣的數據,在上傳 traceId 和 spanId 這些基本信息以外,添加一些本身感興趣的信息請求