Zipkin簡介及基本概念

2022-03-13 14:13:25 字數 1601 閱讀 8414

zipkin簡介

上圖展示了zipkin的基礎架構,主要由4個核心元件構成:

collector:收集器元件,它主要用於處理從外部系統傳送過來的跟蹤資訊,將這些資訊轉換為zipkin內部處理的span格式,以支援後續的儲存、分析、展示等功能。

storage:儲存元件,它主要對處理收集器接收到的跟蹤資訊,缺省會將這些資訊儲存在記憶體中,我們也可以修改此儲存策略,通過使用其他儲存元件將跟蹤資訊儲存到 資料庫或es 中。

restful api:api元件,它主要用來提供外部訪問介面。比如給客戶端展示跟蹤資訊,或是外接系統訪問以實現監控等。

web ui:ui元件,基於api元件實現的上層應用。通過ui元件使用者可以方便而有直觀地查詢和分析跟蹤資訊。

zipkin相關概念

trace、span、annotations注釋

1、trace

zipkin使用trace結構表示對一次請求的跟蹤,一次請求可能由後台的若干服務負責處理,每個服務的處理是乙個span,span之間有依賴關係,trace就是樹結構的span集合;

2、span

每個服務的處理跟蹤是乙個span,可以理解為乙個基本的工作單元,包含了一些描述資訊:id,parentid,name,timestamp,duration,annotations等,例如:

,

"timestamp": 1458702548786000,

"value": "cs"}],

"binaryannotations": [}]

}

id:span id;

name:span的名稱,一般是介面方法的名稱;

parentid:

可選的id,當前span的父span id,通過parentid來保證span之間的依賴關係,

如果沒有parentid,表示當前span為根span;

timestamp:

span建立時的時間戳,使用的單位是微秒(而不是毫秒),所有時間戳都有錯誤,

包括主機之間的時鐘偏差以及時間服務重新設定時鐘的可能性,

出於這個原因,span應盡可能記錄其duration;

duration:持續時間使用的單位是微秒(而不是毫秒);

annotations注釋:用於及時記錄事件;有一組核心注釋用於定義rpc請求的開始和結束;

cs:client send,客戶端發起請求;

sr:server receive,伺服器接受請求,開始處理;

ss:server send,伺服器完成處理,給客戶端應答;

cr:client receive,客戶端接受應答從伺服器

上圖為一次請求的跟蹤,輸出的日誌依次為:微服務名、traceid、spanid、是否取樣。

Kafka 簡介及基本概念

6.other kafka 是乙個分布式流平台 apache kafka is a distributed streaming platform 功能 應用 幾個認識 1.zookeeper 註冊中心 zookeeper 乙個 分布式協調框架 管理 kafka 集群中的 broker 節點 bin ...

kafka基本概念簡介

按照官方的說法,kafka是乙個分布式流平台。實際使用中kafak主要作為乙個中間人,提供資料非同步處理的能力,同時可以對資料進行不同的處理。比如不同的消費者,對資料進行不一樣的邏輯處理 topic 主題 就是同一類訊息的名稱,例如資料庫的乙個表裡面儲存了同一種型別的資料,同乙個主題處理的也是同一類...

Storm 簡介及元件的基本概念

全量資料處理使用的大多是鼎鼎大名的hadoop或者hive,作為乙個批處理系統,hadoop以其吞吐量大 自動容錯等優點,在海量資料處理上得到了廣泛的使用。但是,hadoop不擅長實時計算,因為它天然就是為批處理而生的,這也是業界一致的共識。否則最近這兩年也不會有s4,storm puma這些實時計...