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

《微服務(wù)實戰(zhàn)》 第三十二章 微服務(wù)鏈路跟蹤-sleuth zipkin

這篇具有很好參考價值的文章主要介紹了《微服務(wù)實戰(zhàn)》 第三十二章 微服務(wù)鏈路跟蹤-sleuth zipkin。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

系列文章目錄

第三十二章 微服務(wù)鏈路跟蹤-sleuth zipkin
第三十章 分布式事務(wù)框架seata TCC模式
第二十九章 分布式事務(wù)框架seata AT模式
第十二章 Spring Cloud Alibaba Sentinel
第十一章 Spring Cloud Alibaba nacos配置中心
第十章 SpringCloud Alibaba 之 Nacos discovery
第七章 Spring Cloud 之 GateWay
第六章 Spring Cloud 之 OpenFeign

《微服務(wù)實戰(zhàn)》 第三十二章 微服務(wù)鏈路跟蹤-sleuth zipkin


前言

大型分布式微服務(wù)系統(tǒng)中,一個系統(tǒng)被拆分成N多個模塊,這些模塊負責(zé)不同的功能,組合成一套系統(tǒng),最終可以提供豐富的功能。在這種分布式架構(gòu)中,一次請求往往需要涉及到多個服務(wù)服務(wù)之間的調(diào)用錯綜復(fù)雜,對于維護的成本成倍增加,勢必存在以下幾個問題:

  • 服務(wù)之間的依賴與被依賴的關(guān)系如何能夠清晰的看到?
  • 出現(xiàn)異常時如何能夠快速定位到異常服務(wù)?
  • 出現(xiàn)性能瓶頸時如何能夠迅速定位哪個服務(wù)影響的?

為了能夠在分布式架構(gòu)中快速定位問題,分布式鏈路追蹤應(yīng)運而生。將一次分布式請求還原成調(diào)用鏈路,進行日志記錄,性能監(jiān)控并將一次分布式請求的調(diào)用情況集中展示。

1、Spring Cloud Sleuth

一個分布式服務(wù)跟蹤系統(tǒng),主要有三部分:數(shù)據(jù)收集、數(shù)據(jù)存儲和數(shù)據(jù)展示。
《微服務(wù)實戰(zhàn)》 第三十二章 微服務(wù)鏈路跟蹤-sleuth zipkin

服務(wù)追蹤的追蹤單元是從客戶發(fā)起請求(request)抵達被追蹤系統(tǒng)的邊界開始,到被追蹤系統(tǒng)向客戶返回響應(yīng)(response)為止的過程,稱為一個“trace”。每個 trace 中會調(diào)用若干個服務(wù),為了記錄調(diào)用了哪些服務(wù),以及每次調(diào)用的消耗時間等信息,在每次調(diào)用服務(wù)時,埋入一個調(diào)用記錄,稱為一個“span”。這樣,若干個有序的 span 就組成了一個 trace。在系統(tǒng)向外界提供服務(wù)的過程中,會不斷地有請求和響應(yīng)發(fā)生,也就會不斷生成 trace,把這些帶有span 的 trace 記錄下來,就可以描繪出一幅系統(tǒng)的服務(wù)拓撲圖。附帶上 span 中的響應(yīng)時間,以及請求成功與否等信息,就可以在發(fā)生問題的時候,找到異常的服務(wù);根據(jù)歷史數(shù)據(jù),還可以從系統(tǒng)整體層面分析出哪里性能差,定位性能優(yōu)化的目標。

Spring Cloud Sleuth只負責(zé)產(chǎn)生監(jiān)控數(shù)據(jù),通過日志的方式展示出來,并沒有提供可視化的UI界面。

Spring Cloud Sleuth可以結(jié)合zipkin,將信息發(fā)送到zipkin,利用zipkin的存儲來存儲信息,利用zipkin ui來展示數(shù)據(jù)。

1.1、概念

1.1.1、Span

基本的工作單元,相當(dāng)于鏈表中的一個節(jié)點,通過一個唯一ID標記它的開始、具體過程和結(jié)束。我們可以通過其中存儲的開始和結(jié)束的時間戳來統(tǒng)計服務(wù)調(diào)用的耗時。除此之外還可以獲取事件的名稱、請求信息等。

1.1.2、Trace

一系列的Span串聯(lián)形成的一個樹狀結(jié)構(gòu),當(dāng)請求到達系統(tǒng)的入口時就會創(chuàng)建一個唯一ID(traceId),唯一標識一條鏈路。這個traceId始終在服務(wù)之間傳遞,直到請求的返回,那么就可以使用這個traceId將整個請求串聯(lián)起來,形成一條完整的鏈路。

1.1.3、Annotation

一些核心注解用來標注微服務(wù)調(diào)用之間的事件,重要的幾個注解如下:

  • cs(Client Send):客戶端發(fā)出請求,開始一個請求的生命周期
  • sr(Server Received):服務(wù)端接受請求并處理;sr-cs = 網(wǎng)絡(luò)延遲
  • ss(Server Send):服務(wù)端處理完畢準備發(fā)送到客戶端;ss - sr = 服務(wù)器上的請求處理時間
  • cr(Client Reveived):客戶端接受到服務(wù)端的響應(yīng),請求結(jié)束; cr - sr = 請求的總時間

2、spring cloud整合sleuth

準備四個服務(wù)

  • business-service
  • account-service
  • storage-service
  • order-service

2.1、在common-service中添加依賴

<!--鏈路跟蹤-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>

2.2、在各個業(yè)務(wù)服務(wù)中添加配置

## 設(shè)置openFeign和sleuth的日志級別為debug,方便查看日志信息
logging:
  level:
    org.springframework.cloud.openfeign: debug
    org.springframework.cloud.sleuth: debug

《微服務(wù)實戰(zhàn)》 第三十二章 微服務(wù)鏈路跟蹤-sleuth zipkin

  • 第一個:服務(wù)名稱
  • 第二個:traceId,唯一標識一條鏈路
  • 第三個:spanId,鏈路中的基本工作單元id

3、整合zipkin

Zipkin 是 Twitter 的一個開源項目,它基于Google Dapper實現(xiàn),它致力于收集服務(wù)的定時數(shù)據(jù)。
《微服務(wù)實戰(zhàn)》 第三十二章 微服務(wù)鏈路跟蹤-sleuth zipkin
Zipkin共分為4個核心的組件,如下:

  • Collector:收集器組件,它主要用于處理從外部系統(tǒng)發(fā)送過來的跟蹤信息,將這些信息轉(zhuǎn)換為Zipkin內(nèi)部處理的 Span 格式,以支持后續(xù)的存儲、分析、展示等功能。
  • Storage:存儲組件,它主要對處理收集器接收到的跟蹤信息,默認會將這些信息存儲在內(nèi)存中,我們也可以修改此存儲策略,通過使用其他存儲組件將跟蹤信息存儲到數(shù)據(jù)庫中
  • RESTful API:API 組件,它主要用來提供外部訪問接口。比如給客戶端展示跟蹤信息,或是外接系統(tǒng)訪問以實現(xiàn)監(jiān)控等。
  • UI:基于API組件實現(xiàn)的上層應(yīng)用。通過UI組件用戶可以方便而有直觀地查詢和分析跟蹤信息
    zipkin分為服務(wù)端和客戶端,服務(wù)端主要用來收集跟蹤數(shù)據(jù)并且展示,客戶端主要功能是發(fā)送給服務(wù)端,微服務(wù)的應(yīng)用也就是客戶端,這樣一旦發(fā)生調(diào)用,就會觸發(fā)監(jiān)聽器將sleuth日志數(shù)據(jù)傳輸給服務(wù)端。

3.1、搭建zipkin服務(wù)端

3.1.1、下載安裝

下載:https://repo1.maven.org/maven2/io/zipkin/zipkin-server/2.24.0/zipkin-server-2.24.0-exec.jar
將java包放到d盤zipkin里面
啟動:java -jar zipkin-server-2.24.0-exec.jar
訪問系統(tǒng):http://127.0.0.1:9411/文章來源地址http://www.zghlxwxcb.cn/news/detail-483851.html

3.1.2、在common-service中添加依賴

<!--鏈路追蹤 zipkin依賴,其中包含Sleuth的依賴-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-zipkin</artifactId>
    <version>2.2.8.RELEASE</version>
</dependency>

3.1.3、在各業(yè)務(wù)服務(wù)中加上配置

spring:
  cloud:
    sleuth:
      sampler:
        # 日志數(shù)據(jù)采樣百分比,默認0.1(10%),這里為了測試設(shè)置成了100%,生產(chǎn)環(huán)境只需要0.1即可
        probability: 1.0
      zipkin:
        #zipkin server的請求地址
        base-url: http://127.0.0.1:9411
        #讓nacos把它當(dāng)成一個URL,而不要當(dāng)做服務(wù)名
        discovery-client-enabled: false

到了這里,關(guān)于《微服務(wù)實戰(zhàn)》 第三十二章 微服務(wù)鏈路跟蹤-sleuth zipkin的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【正點原子STM32連載】第三十二章 DMA實驗 摘自【正點原子】APM32E103最小系統(tǒng)板使用指南

    1)實驗平臺:正點原子APM32E103最小系統(tǒng)板 2)平臺購買地址:https://detail.tmall.com/item.htm?id=609294757420 3)全套實驗源碼+手冊+視頻下載地址: http://www.openedv.com/docs/boards/xiaoxitongban 本章介紹APM32E103直接存儲訪問(DMA)的使用,DMA能夠在無CPU干預(yù)的情況下,實現(xiàn)外設(shè)與存儲器或存儲

    2024年02月22日
    瀏覽(20)
  • 【正點原子STM32連載】 第三十二章 光敏傳感器實驗 摘自【正點原子】STM32F103 戰(zhàn)艦開發(fā)指南V1.2

    【正點原子STM32連載】 第三十二章 光敏傳感器實驗 摘自【正點原子】STM32F103 戰(zhàn)艦開發(fā)指南V1.2

    本章,我們將學(xué)習(xí)使用STM32開發(fā)板板載的一個光敏傳感器。我們還是要使用到ADC采集,通過ADC采集電壓,獲取光敏傳感器的電阻變化,從而得出環(huán)境光線的變化,并在TFTLCD上面顯示出來。 本章分為如下幾個小節(jié): 32.1 光敏傳感器簡介 32.2 硬件設(shè)計 32.3 程序設(shè)計 32.4 下載驗證

    2024年02月03日
    瀏覽(70)
  • 【微服務(wù)實戰(zhàn)之Docker容器】第四章-【微服務(wù)實戰(zhàn)之Docker容器】第三章-鏡像倉庫

    【微服務(wù)實戰(zhàn)之Docker容器】第四章-【微服務(wù)實戰(zhàn)之Docker容器】第三章-鏡像倉庫

    【微服務(wù)實戰(zhàn)之Docker容器】第一章-下載及安裝 Docker掛載主機目錄訪問如果出現(xiàn)cannot open directory .: Permission denied解決辦法: 在掛載目錄后多加一個–privileged=true參數(shù)即可 如果是CentOS7安全模塊會比之前系統(tǒng)版本加強,不安全的會先禁止,所以目錄掛載的情況被默認為不安全的

    2024年02月07日
    瀏覽(23)
  • 《微服務(wù)實戰(zhàn)》 第三十章 分布式事務(wù)框架seata TCC模式

    《微服務(wù)實戰(zhàn)》 第三十章 分布式事務(wù)框架seata TCC模式

    第三十章 分布式事務(wù)框架seata TCC模式 第二十九章 分布式事務(wù)框架seata AT模式 本章節(jié)介紹分布式事務(wù)框架seata TCC模式,上一章節(jié)介紹seata以及集成到Springboot、微服務(wù)框架里。 一個分布式的全局事務(wù),整體是 兩階段提交 的模型。全局事務(wù)是由若干分支事務(wù)組成的,分支事務(wù)要

    2024年02月12日
    瀏覽(24)
  • 【正點原子FPGA連載】第三十二章OV5640攝像頭RGB-LCD顯示實驗 摘自【正點原子】DFZU2EG/4EV MPSoC 之FPGA開發(fā)指南V1.0

    【正點原子FPGA連載】第三十二章OV5640攝像頭RGB-LCD顯示實驗 摘自【正點原子】DFZU2EG/4EV MPSoC 之FPGA開發(fā)指南V1.0

    1)實驗平臺:正點原子MPSoC開發(fā)板 2)平臺購買地址:https://detail.tmall.com/item.htm?id=692450874670 3)全套實驗源碼+手冊+視頻下載地址: http://www.openedv.com/thread-340252-1-1.html OV5640是OmniVision(豪威科技)公司生產(chǎn)的CMOS圖像傳感器,該傳感器分辨率高、采集速率快,圖像處理性能強,

    2023年04月08日
    瀏覽(26)
  • SpringCloud微服務(wù)實戰(zhàn)——搭建企業(yè)級開發(fā)框架:第三方登錄-微信小程序授權(quán)登錄流程設(shè)計和實現(xiàn)

    SpringCloud微服務(wù)實戰(zhàn)——搭建企業(yè)級開發(fā)框架:第三方登錄-微信小程序授權(quán)登錄流程設(shè)計和實現(xiàn)

    ??在前面的設(shè)計和實現(xiàn)中,我們的微服務(wù)開發(fā)平臺通過JustAuth來實現(xiàn)第三方授權(quán)登錄,通過集成公共組件,著實減少了很多工作量,大多數(shù)的第三方登錄直接通過配置就可以實現(xiàn)。而在第三方授權(quán)登錄中,微信小程序授權(quán)登錄和APP微信授權(quán)登錄是兩種特殊的第三方授權(quán)登錄

    2024年02月07日
    瀏覽(19)
  • Nestjs 微服務(wù)實戰(zhàn) - 動態(tài)微服務(wù)創(chuàng)建鏈接

    所有的微服務(wù)都需要做服務(wù)治理 服務(wù)治理包括(配置中心、服務(wù)發(fā)現(xiàn)、注冊服務(wù)等等),常見的包括 Java 的 Nacos,這里不關(guān)注與服務(wù)治理,只說明,如何用 nest 網(wǎng)關(guān),并且在網(wǎng)關(guān)層動態(tài)實現(xiàn)微服務(wù)注入 nestjs 官網(wǎng)的案例明顯是偏向于手動注冊微服務(wù)的,例如: 以上屬于官網(wǎng)列

    2024年01月24日
    瀏覽(18)
  • go-zero微服務(wù)實戰(zhàn)——服務(wù)構(gòu)建

    go-zero微服務(wù)實戰(zhàn)——服務(wù)構(gòu)建

    接上一節(jié)go-zero微服務(wù)實戰(zhàn)——基本環(huán)境搭建。搭建好了微服務(wù)的基本環(huán)境,開始構(gòu)建整個微服務(wù)體系了,將其他服務(wù)也搭建起來。 order的目錄結(jié)構(gòu),如下 根目錄 api服務(wù) rpc服務(wù) 自定義邏輯層logic 自定義參數(shù)層models 自定義工具層util api服務(wù)和rpc服務(wù)都是基于goctl一鍵生成的,當(dāng)

    2024年02月14日
    瀏覽(24)
  • SpringCloudAlibaba微服務(wù)實戰(zhàn)系列(一)Nacos服務(wù)注冊發(fā)現(xiàn)

    SpringCloudAlibaba微服務(wù)實戰(zhàn)系列(一)Nacos服務(wù)注冊發(fā)現(xiàn)

    實戰(zhàn)前先做一個背景了解。 單體架構(gòu):近幾年技術(shù)的飛速發(fā)展,各種各樣的服務(wù)已經(jīng)進入到網(wǎng)絡(luò)化。單體架構(gòu)發(fā)布時只需要打成一個war或jar包發(fā)布即可;而隨著業(yè)務(wù)量激增或網(wǎng)站流量的增加,必會暴露致命缺陷。 SOA:Service Oriented Architecture 面向服務(wù)的體系結(jié)構(gòu)。旨在提升代

    2024年02月15日
    瀏覽(47)
  • SpringCloud入門實戰(zhàn)(十二)-Sleuth+Zipkin分布式請求鏈路跟蹤詳解

    SpringCloud入門實戰(zhàn)(十二)-Sleuth+Zipkin分布式請求鏈路跟蹤詳解

    ?? 學(xué)技術(shù)、更要掌握學(xué)習(xí)的方法,一起學(xué)習(xí),讓進步發(fā)生 ???? 作者:一只IT攻城獅 ,關(guān)注我,不迷路 。 ??學(xué)習(xí)建議:1、養(yǎng)成習(xí)慣,學(xué)習(xí)java的任何一個技術(shù),都可以先去官網(wǎng)先看看,更準確、更專業(yè)。 ??學(xué)習(xí)建議:2、然后記住每個技術(shù)最關(guān)鍵的特性(通常一句話或者

    2024年02月13日
    瀏覽(27)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包