国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

SkyWalking鏈路追蹤中span全解

這篇具有很好參考價值的文章主要介紹了SkyWalking鏈路追蹤中span全解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

基本概念

????????在SkyWalking鏈路追蹤中,Span(跨度)是Trace(追蹤)的組成部分之一。Span代表一次調(diào)用或操作的單個組件,可以是一個方法調(diào)用、一個HTTP請求或者其他類型的操作。

????????每個Span都包含了一些關(guān)鍵的信息,如開始時間、結(jié)束時間、耗時、所屬的Trace ID、Span ID等。開始時間和結(jié)束時間記錄了Span的執(zhí)行時間,而Trace ID和Span ID用于標識Span所屬的Trace和上下文關(guān)系。

????????通過記錄和分析每個Span的信息,可以了解每個組件的性能指標和調(diào)用關(guān)系。例如,可以查看每個Span的耗時,從而定位潛在的性能瓶頸;還可以通過分析Span之間的關(guān)系,了解請求在分布式系統(tǒng)中的流轉(zhuǎn)過程。

????????Span的概念在SkyWalking鏈路追蹤中非常重要,它是分析和優(yōu)化分布式系統(tǒng)性能的基礎。通過對Span數(shù)據(jù)的收集和分析,開發(fā)人員可以深入了解系統(tǒng)中每個組件的性能和調(diào)用關(guān)系,進而改進系統(tǒng)的可靠性和性能。

SkyWalking鏈路追蹤中span全解,SkyWalking鏈路追蹤,skywalking

span的ID

????????Span ID(Span Identifier)是用來唯一標識一個Span的ID。在分布式系統(tǒng)中,請求鏈路可能會涉及多個組件和服務,每個組件對應一個Span。為了跟蹤和關(guān)聯(lián)不同的Span,每個Span都會分配一個唯一的Span ID。

????????通過將Span ID與父Span的ID關(guān)聯(lián)起來,我們可以在整個請求鏈路中追蹤和關(guān)聯(lián)不同組件的Span。Span ID可以通過生成唯一的標識符,如UUID(Universally Unique Identifier),保證其在鏈路中的唯一性。

????????通過使用Span ID,我們可以輕松地將不同組件的Span聯(lián)系在一起,并對整個請求鏈路進行緊密的追蹤和分析。這對于分布式系統(tǒng)調(diào)試、性能優(yōu)化和故障排查非常有幫助。

SkyWalking鏈路追蹤中span全解,SkyWalking鏈路追蹤,skywalking

?????????一個請求鏈路中的不同Span看作是一個鏈表結(jié)構(gòu)。每個Span都有一個唯一的Span ID作為標識符,并且可以有一個或多個父Span ID和一個或多個子Span ID。

??????????通過父子Span ID的關(guān)聯(lián),我們可以在鏈路中建立起Span之間的關(guān)系,形成一個有序的鏈表結(jié)構(gòu)。父Span和子Span之間的關(guān)系可以幫助我們理解請求的調(diào)用順序和調(diào)用關(guān)系。

????????通過這種鏈表結(jié)構(gòu),我們可以高效地追蹤和分析請求的調(diào)用鏈路。我們可以從Entry Span開始,根據(jù)Span ID和父子Span ID的關(guān)聯(lián),逐個遍歷Span,了解請求的調(diào)用順序和每個組件的性能情況。

????????這種鏈表結(jié)構(gòu)在分布式系統(tǒng)的調(diào)試、故障排查和性能優(yōu)化中非常有用,幫助我們理解請求的路徑、調(diào)用關(guān)系和性能變化。

SkyWalking鏈路追蹤中span全解,SkyWalking鏈路追蹤,skywalking

????????一個Span只能有一個父Span ID,但可以有多個子Span ID。換句話說,一個Span可以被多個子Span所關(guān)聯(lián),但只能有一個父Span

SkyWalking鏈路追蹤中span全解,SkyWalking鏈路追蹤,skywalking

?

架構(gòu)體系

span類型:

在SkyWalking鏈路追蹤中,Span(跨度)可以包含多種類型,用于表示不同種類的調(diào)用和操作。下面是一些常見的Span類型:

  1. Entry Span(入口跨度):表示請求進入系統(tǒng)的第一個組件,通常是客戶端發(fā)起的請求。Entry Span記錄了請求的開始時間、請求的路徑和入口點等信息。

  2. Exit Span(出口跨度):表示請求離開系統(tǒng)的最后一個組件,通常是系統(tǒng)對外提供的服務。Exit Span記錄了請求的結(jié)束時間、請求的路徑和出口點等信息。

  3. Local Span(本地跨度):表示請求在系統(tǒng)內(nèi)部的一個組件間的調(diào)用。Local Span記錄了請求在組件內(nèi)的操作和耗時等信息。

  4. Remote Span(遠程跨度):表示請求調(diào)用了位于不同主機或網(wǎng)絡節(jié)點上的遠程組件。Remote Span記錄了請求調(diào)用遠程組件的耗時和網(wǎng)絡通信等信息。

  5. Error Span(錯誤跨度):表示系統(tǒng)中發(fā)生了錯誤或異常的Span。Error Span記錄了錯誤發(fā)生的詳細信息,如錯誤類型、錯誤碼和錯誤堆棧等。

這些Span類型涵蓋了分布式系統(tǒng)中常見的調(diào)用和操作場景,通過區(qū)分不同類型的Span,可以更好地分析和優(yōu)化系統(tǒng)的性能和穩(wěn)定性。

解讀:

? ? ? ??在鏈路追蹤中,Span(跨度)是最小的單元,它代表了一次調(diào)用或操作的單個組件。每個Span記錄了該組件的關(guān)鍵信息,如開始時間、結(jié)束時間、耗時等。通過組合多個Span,就可以構(gòu)成一個完整的Trace(追蹤),描述了請求在分布式系統(tǒng)中的流轉(zhuǎn)過程。

由于Span是最小的單元,它可以記錄組件間的調(diào)用關(guān)系、性能指標和錯誤狀態(tài)等重要信息。通過分析和觀察這些Span,可以了解請求的路徑、耗時和錯誤等關(guān)鍵指標,從而進行性能優(yōu)化、故障排查和系統(tǒng)調(diào)優(yōu)。所以在鏈路追蹤中,Span是對系統(tǒng)進行監(jiān)測和分析的基本單元。

? ? ? ? 通過最小單元來對每一次具體的分布式服務之中的調(diào)用進行描述

圖示:

????????SkyWalking鏈路追蹤中span全解,SkyWalking鏈路追蹤,skywalking

?

圖解:?

假設我們有一個在線購物系統(tǒng),由以下幾個組件組成:網(wǎng)關(guān)服務(Gateway Service)、用戶服務(User Service)、訂單服務(Order Service)和支付服務(Payment Service)?,F(xiàn)在我將模擬一個用戶下單并完成支付的鏈路,并說明各個Span的類型和作用。

  1. 用戶發(fā)起下單請求,請求進入系統(tǒng)中的網(wǎng)關(guān)服務(Entry Span)。Entry Span記錄了請求的開始時間、路徑和入口點等信息。

  2. 網(wǎng)關(guān)服務調(diào)用用戶服務來驗證用戶信息并獲取用戶購物車內(nèi)容(Local Span)。這個調(diào)用生成了一個Local Span,記錄了網(wǎng)關(guān)服務調(diào)用用戶服務的操作和耗時等信息。

  3. 用戶服務內(nèi)部發(fā)現(xiàn)用戶購物車中有商品,需要調(diào)用訂單服務生成訂單(Remote Span)。這個調(diào)用生成了一個Remote Span,記錄了用戶服務調(diào)用訂單服務的耗時和網(wǎng)絡通信情況。

  4. 訂單服務接收到請求并生成訂單后,需要調(diào)用支付服務完成支付(Local Span)。這個調(diào)用生成了一個Local Span,記錄了訂單服務調(diào)用支付服務的操作和耗時等信息。

  5. 支付服務完成支付操作后,返回支付結(jié)果給訂單服務(Exit Span)。這個過程生成了一個Exit Span,表示請求離開系統(tǒng)的最后一個組件。

  6. 如果在任意一個組件中發(fā)生了錯誤,比如用戶服務調(diào)用訂單服務時發(fā)生了超時錯誤,會生成一個Error Span。Error Span記錄了錯誤的詳細信息,如錯誤類型、錯誤碼和錯誤堆棧等。

????????通過以上模擬的鏈路,我們可以看到各個Span在請求過程中的作用。Entry Span標識了請求的起點,Local Span記錄了組件內(nèi)部的操作,Remote Span記錄了遠程調(diào)用的情況,Exit Span表示請求的終點,而Error Span幫助我們定位和解決錯誤。這些Span記錄了關(guān)鍵的信息,幫助我們了解請求的路徑、耗時和錯誤等情況,從而進行性能優(yōu)化、故障排查和系統(tǒng)調(diào)優(yōu)。

產(chǎn)生local span與產(chǎn)生remote span

????????如果在一個服務器上的服務調(diào)用另一個在同一臺服務器上的服務,則可以將其稱為Local Span。這是因為這個調(diào)用是在同一個服務器內(nèi)部完成的。

而如果一個服務器上的服務需要調(diào)用位于不同主機或網(wǎng)絡節(jié)點上的服務(即跨服務器),則可以將其稱為Remote Span。這種情況下,跨服務器的調(diào)用會涉及網(wǎng)絡通信和跨越不同物理設備或虛擬機的操作。

需要注意的是,Local Span和Remote Span并不僅僅取決于服務部署在不同的服務器上,還取決于調(diào)用方式和組件的網(wǎng)絡結(jié)構(gòu)。有時候,即使服務部署在不同的服務器上,但是它們通過本地網(wǎng)絡進行調(diào)用,仍然可以被視為Local Span。因此,在確定Span類型時,除了服務器的物理位置外,還需要考慮組件之間的調(diào)用方式和網(wǎng)絡結(jié)構(gòu)。

離開系統(tǒng)的最后一個服務產(chǎn)生exit span

????????Exit Span表示請求離開系統(tǒng)的最后一個組件,但并不一定是直接返回給用戶。在我們的示例中,支付服務完成支付操作后,返回支付結(jié)果給訂單服務,它是Exit Span的組件。這個Exit Span表示請求離開系統(tǒng)的最后一個組件,但請求可能還需要經(jīng)過其他組件,如訂單服務可能會繼續(xù)將結(jié)果返回給網(wǎng)關(guān)服務,最終才返回給用戶。

????????Exit Span是描述請求鏈路中離開系統(tǒng)的最后一個組件,它并不指明返回值是直接給用戶。請求可能還需要經(jīng)過多個組件、服務或?qū)蛹?,直到最終返回給用戶。Exit Span幫助我們追蹤請求的終點,但不一定表示直接返回給用戶。

????????在這個鏈路中,Exit Span表示支付服務完成支付操作后,將支付結(jié)果返回給訂單服務。這個Exit Span是請求離開系統(tǒng)的最后一個組件,我們可以追蹤請求的終點。但這個請求的返回值可能還需要經(jīng)過其他組件,如訂單服務可能會繼續(xù)將結(jié)果返回給網(wǎng)關(guān)服務,最終才返回給用戶。所以在整個鏈路中,Exit Span標識了請求離開系統(tǒng)的最后一個組件。

????????Exit Span主要是用來標識請求離開了系統(tǒng)的最后一個組件。它幫助我們追蹤請求的終點,但不一定表示請求的返回值直接給了用戶。在整個請求鏈路中,一個Exit Span標識了離開了當前組件,但請求可能還需要經(jīng)過其他組件、服務或?qū)蛹墸钡阶罱K返回給用戶。Exit Span的作用是幫助我們了解請求的終點,而不僅僅表示返回值直接給了用戶。文章來源地址http://www.zghlxwxcb.cn/news/detail-605126.html

到了這里,關(guān)于SkyWalking鏈路追蹤中span全解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關(guān)文章

  • skywalking全鏈路追蹤

    skywalking全鏈路追蹤

    在上一篇文章skywalking安裝教程中我們介紹了skywalking的作用以及如何將其集成到我們的微服務項目中。本篇文章我們介紹在微服務架構(gòu)中,如何使用skywalking對一次客戶端請求進行全鏈路追蹤。 skywalking的介紹分多篇文章: 微服務項目集成skywalking skywalking全鏈路追蹤 何為全鏈路

    2024年02月14日
    瀏覽(23)
  • 全網(wǎng)最全的Skywalking鏈路追蹤

    全網(wǎng)最全的Skywalking鏈路追蹤

    寫在前面 :筆者發(fā)現(xiàn)目前關(guān)于Skywalking的內(nèi)容很是零散,沒有成型的內(nèi)容,筆者在項目中使用到Skywalking進行埋點分析,下面分三篇來介紹下Skywalking,分別是Skywalking基本知識,Skywalking基于docke安裝,SpringBoot工程集成Skywalking 服務監(jiān)控需要滿足的三要素分別如下: 日志監(jiān)控 指標

    2023年04月08日
    瀏覽(23)
  • Skywalking全鏈路追蹤【學習筆記】

    Skywalking全鏈路追蹤的服務搭建,使用docker進行安裝。 搭建【ES】 搭建【SkyWalking】 訪問這里:http://localhost:9898/ 就有界面了 啟動配置添加【Agent】 日志配置添加【日志】 完成 (~ ̄▽ ̄)~ 本地測試接口請求 然后登入http://localhost:9898/ 進行查看數(shù)據(jù) 參考 SkyWalking 教程:https

    2024年02月12日
    瀏覽(24)
  • 微服務鏈路追蹤SkyWalking學習筆記

    微服務鏈路追蹤SkyWalking學習筆記

    目錄 1、skywalking是什么 1.2?鏈路追蹤框架對比 1.3?性能對比 1.4?Skywalking主要功能特性 2、?SkyWalking?環(huán)境搭建部署 2.1?下載?SkyWalking? ?2.2?搭建SkyWalking?OAP?服務 2.3?SkyWalking中三個概念 3、?SkyWalking?接入微服務 3.1?linux環(huán)境—通過jar包方式接入 3.2?windos環(huán)境—在IDEA中使用Sk

    2024年02月14日
    瀏覽(22)
  • SkyWalking分布式鏈路追蹤學習

    SkyWalking分布式鏈路追蹤學習

    實際生產(chǎn)中,面對幾十個、甚至成百上千個的微服務實例,如果一旦某個實例發(fā)生宕機,如果不能快速定位、提交預警,對實際生產(chǎn)造成的損失無疑是巨大的。所以,要對微服務進行監(jiān)控、預警,對微服務的調(diào)用鏈路進行監(jiān)控,迅速定位問題 SkyWalking下載 SkyWalking官網(wǎng) elastic

    2024年02月07日
    瀏覽(51)
  • SkyWalking鏈路追蹤-技術(shù)文檔首頁

    SkyWalking鏈路追蹤-技術(shù)文檔首頁

    SkyWalking鏈路追蹤-融合-spring-boot-cloud-單機環(huán)境 之《10 分鐘快速搭建spring-boot-cloud整合SkyWalking鏈路追蹤》_一單成的博客-CSDN博客 SkyWalking鏈路追蹤-搭建-spring-boot-cloud-單機環(huán)境 之《10 分鐘快速搭建 SkyWalking 服務》_一單成的博客-CSDN博客 ?SkyWalking鏈路追蹤-Collector(收集器)_一單

    2024年02月15日
    瀏覽(24)
  • 分布式鏈路追蹤之SkyWalking

    分布式鏈路追蹤之SkyWalking

    ??在微服務架構(gòu)中,一次請求往往涉及到多個模塊,多個中間件,多臺機器的相互協(xié)作才能完成。這一系列調(diào)用請求中,有些是串行的,有些是并行的,那么如何確定這個請求背后調(diào)用了哪些應用,哪些模塊,哪些節(jié)點及調(diào)用的先后順序?如何定位每個模塊的性能問題?本

    2023年04月20日
    瀏覽(45)
  • 分布式鏈路追蹤專欄,分布式鏈路追蹤:Skywalking集群管理設計

    分布式鏈路追蹤專欄,分布式鏈路追蹤:Skywalking集群管理設計

    SkyWalking 是一個開源 APM 系統(tǒng),包括針對 Cloud Native 體系結(jié)構(gòu)中的分布式系統(tǒng)的監(jiān)視,跟蹤,診斷功能。核心功能如下: 服務、服務實例、端點指標分析; 根本原因分析,在運行時分析代碼; 服務拓撲圖分析; 服務,服務實例和端點依賴性分析; 檢測到慢速服務和端點; 性

    2024年02月01日
    瀏覽(50)
  • SkyWalking鏈路追蹤-Collector(收集器)

    SkyWalking的Collector(收集器)是SkyWalking鏈路追蹤的核心組件之一。它負責接收來自各個Agent的追蹤數(shù)據(jù),并將其存儲到數(shù)據(jù)存儲器(如數(shù)據(jù)庫)中。具體來說,Collector提供了一個統(tǒng)一的接口,用于接收和處理從Agent發(fā)送過來的數(shù)據(jù)。 數(shù)據(jù)接收:Collector提供接口和服務來接收來自

    2024年02月15日
    瀏覽(17)
  • 第02講:鏈路追蹤利器,快速上手 SkyWalking

    SkyWalking 環(huán)境搭建 在本課時中,我們將安裝并體驗 SkyWalking 的基本使用,下面是使用到的相關(guān)軟件包: apache-skywalking-apm-6.2.0.tar.gz 下載地址:https://archive.apache.org/dist/skywalking/6.2.0/ elasticsearch-6.6.1.tar.gz 下載地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.1.tar.gz ki

    2023年04月10日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包