分散式系統中的分散式鏈路追蹤與分散式呼叫鏈路
本文分享自天翼雲開發者社群《
分散式系統中的分散式鏈路追蹤與分散式呼叫鏈路
》,作者:
c****w
在分散式系統中,由於服務間的呼叫關係複雜,需要實現分散式鏈路追蹤來跟蹤請求在各個服務中的呼叫路徑和時間消耗。這對問題排查和效能監控都很重要。
常用的分散式鏈路追蹤實現有基於日誌的和基於分散式追蹤系統的兩種方式:
基於日誌的實現方式是在每個服務中記錄自己的請求id和上下文資訊,並在日誌中列印出來。這樣可以透過聚合各個服務的日誌來還原整個請求鏈路。
基於分散式追蹤系統的實現方式是:
使用開源Tracing系統,比如Zipkin。每個服務都需要整合Tracing客戶端庫。
客戶端在發起請求時,生成一個唯/一的TraceId並傳遞給下游服務。
每個服務接收到請求都需要記錄Span資料,包括操作名、時間戳等。
所有Span資料透過訊息佇列傳送給Tracing系統。
Tracing系統將收集的Span透過時間排序後重構成一條鏈路。
這裡繼續擴充套件分散式鏈路追蹤的幾點內容:
1.資料收集方式除了日誌和Tracing系統外,還可以採用專用Agent向中心伺服器報告追蹤資料。
2.鏈路資料展示可以透過視覺化追蹤系統實現,支援過濾、聚合查詢等功能尋找效能瓶頸。
3.鏈路資料可以進一步用於異常監控,比如追蹤錯誤請求的整個呼叫鏈路排查問題。
4.鏈路資料也可以用於應用效能監控(APM),追蹤每個服務的響應時間分佈找出慢服務。
5.分散式追蹤需要考慮大量分散式呼叫產生的高併發壓力,選擇效能優異的追蹤系統實現。
6.鏈路資料可以透過機器學習演演算法進行分析,自動學習出正常呼叫模式,找出異常呼叫路徑。
7.鏈路ID的傳播需要考慮多種語言和協議的相容,保證ID的上下文傳遞。
8.鏈路資料的儲存和查詢也是一個重要問題,需要考慮大規模分散式追蹤資料的處理能力。
9.鏈路取樣是一種常用最佳化手段,只對部分請求進行詳細追蹤,降低系統壓力。
以上內容給出了分散式鏈路追蹤在資料收集、展示、應用等方面的一些進一步思路,對系統設計和最佳化很有幫助。
來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/70014251/viewspace-3004417/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 分散式鏈路追蹤技術分散式
- 分散式鏈路追蹤的利器——Zipkin分散式
- 分散式服務呼叫鏈追蹤分散式
- zipkin分散式鏈路追蹤介紹分散式
- .NET Core 中的日誌與分散式鏈路追蹤分散式
- BOS分散式鏈路追蹤產品揭秘分散式
- SkyWalking —— 分散式應用監控與鏈路追蹤分散式
- 使用Spring Cloud Sleuth實現分散式系統的鏈路追蹤SpringCloud分散式
- 分散式鏈路追蹤框架的基本實現原理分散式框架
- 分散式鏈路追蹤自從用了SkyWalking,睡得真香!分散式
- dubbo分散式應用中使用zipkin做鏈路追蹤分散式
- 分散式鏈路追蹤之Spring Cloud Sleuth+Zipkin最全教程!分散式SpringCloud
- 一文詳解|Go 分散式鏈路追蹤實現原理Go分散式
- .NET Core整合SkyWalking+SkyAPM-dotne實現分散式鏈路追蹤分散式
- 使用zipKin構建NetCore分散式鏈路跟蹤NetCore分散式
- OpenTelemetry分散式追蹤分散式
- 【Springboot】例項講解Springboot整合OpenTracing分散式鏈路追蹤系統(Jaeger和Zipkin)Spring Boot分散式
- 分散式應用追蹤系統 - Skywalking分散式
- 分散式鏈路追蹤Jaeger + 微服務Pig在Rainbond上的實踐分享分散式微服務AI
- 像跟蹤分散式服務呼叫那樣跟蹤 Go 函式呼叫鏈分散式Go函式
- Go微服務框架go-kratos實戰05:分散式鏈路追蹤 OpenTelemetry 使用Go微服務框架分散式
- OpenTracing——設計分散式追蹤系統的有效方法分散式
- 分散式系統2:分散式系統中的時鐘分散式
- 原理 | 分散式鏈路跟蹤元件 SOFATracer 和 Zipkin 模型轉換分散式元件模型
- 分散式系統的跟蹤系統分散式
- 分散式 - 分散式系統的特點分散式
- 分散式全鏈路灰度釋出的探索與實踐分散式
- 08.Sleuth(Micrometer)+ZipKin分散式鏈路追逐分散式
- 如何實現簡單的分散式鏈路功能?分散式
- 讓你的Nginx支援分散式追蹤Nginx分散式
- 螞蟻金服分散式鏈路跟蹤元件 SOFATracer 總覽 | 剖析分散式元件
- 分散式系統:遠端呼叫分散式
- 《中介軟體效能挑戰賽--分散式統計和過濾的鏈路追蹤》java 選手分享分散式Java
- 分散式系統(三)——分散式事務分散式
- 分散式呼叫鏈跟蹤工具Jaeger?兩分鐘極速體驗分散式
- [分散式]分散式計算系統淺析分散式
- 分散式系統分散式
- [業界方案] 用SOFATracer學習分散式追蹤系統Opentracing分散式