微服務跟蹤簡介

2021-08-21 04:50:12 字數 1139 閱讀 4063

一 分布式計算的八大誤區

1 網路可靠

2 延遲為零

3 寬頻無限

4 網路絕對安全

5 網路拓撲不會改變

6 必須有一名管理員

7 傳輸成本為零

8 網路同質化

分布式計算的許多點都在描述乙個問題——網路問題。網路非常脆弱,同時,網路資源也是有限的。

微服務之間通過網路進行通訊。如果能夠跟蹤每個請求,了解請求經過哪些微服務(從而了解資訊是如何在服務之間流動)、請求耗費時間、網路延遲、業務邏輯耗費時間等指標,那麼就能更好地分析系統瓶頸、解決系統問題。因此,微服務跟蹤很有必要。

二 spring cloud sleuth簡介

關於sleuth的術語:

span(跨度):基本工作單元。span用乙個64位的id唯一標識。除id外,span還包含其他資料,例如描述、時間戳事件、鍵值對的註解(標籤),span id、span父id等。span被啟動和停止時,記錄了時間資訊。初始化span被稱為「root span」,該span的id和trace的id相等。

trace(跟蹤):一組共享「root span」的span組成的樹狀結構稱為trace。trace也用乙個64位的id唯一標識,trace中的所有span都共享該trace的id。

annotation(標註):annotation用來記錄事件的存在,其中,核心annotation用來定義請求的開始和結束。

cs(client sent客戶端傳送):客戶端傳送乙個請求,該annotation描述了span的開始。

sr(server received伺服器端接收):服務端獲得請求並準備處理它。如果用sr減去cs時間戳,就能得到網路延遲。

ss(server sent服務端傳送):該annotation表明完成請求處理(當響應發回客戶端時)。如果用ss減去sr時間戳,就能得到伺服器端處理請求所需要的時間。

cr(client received客戶端接收):span結束的標識。客戶端成功接受到伺服器端的響應。如果cr減去cs時間戳,就能得到客戶端傳送請求到伺服器響應的時間。

下圖描述了微服務的跟蹤:

微服務 微服務簡介

什麼是微服務 顧名思義,就是粒度較小的服務,不再侷限於系統與系統之間的藉口呼叫,也不侷限於某種具體的服務形式。系統中凡是可被復用的功能模組都可以被 服務化 轉變為 服務 這些服務可以對外暴露,也可能僅限於再系統內部使用。由於服務數量更多,粒度更小,因此管控難度會更大,對效能的要求也更高。微服務的好處...

微服務簡介

1.什麼是單體應用程式 單體應用程式就是所有的業務模組都是在乙個應用程式中,訪問乙個資料庫,我們平時一般使用的就是單體應用程式 2.什麼是微服務 微服務就是把單體應用程式中的各個業務模組分為各個服務系統,服務之間提供rest api 供外界訪問,每個服務對應各自的資料庫,手機端通過api gatew...

微服務簡介

單體架構是什麼 乙個歸檔包包含了應用所有功能的應用程式,我們通常稱之為單體應用。架構單體應用的架構風格,我們稱之為單體架構,這是一種比較傳統的架構風格。單體架構存在的缺點 複雜性逐漸變高 技術債務逐漸上公升 部署速度逐漸變慢 阻礙技術創新 無法按需伸縮 架構的演進 單體架構 soa微服務 什麼是微服...