欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

分布式系統(tǒng)下調(diào)用鏈追蹤技術面試題

 更新時間:2022年03月09日 14:25:03   作者:Q.E.D  
這篇文章主要為大家介紹了分布式系統(tǒng)下調(diào)用鏈追蹤技術面試問題合集,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪

引言

一個復雜的分布式系統(tǒng),用戶發(fā)起一個請求,這個請求可能調(diào)用幾十到幾百個服務,經(jīng)過很多業(yè)務層,而每個業(yè)務又是多個機器集群,一個請求具體被隨機到哪臺機器上又無法確定,如果最后用戶的請求失敗,只返回一個錯誤提示,作為開發(fā)人員,該如何定位解決問題?你需要定位以下問題:

  • 問題出在哪個服務,是你負責的服務還是調(diào)用別人服務的某一個環(huán)節(jié)。
  • 同一個服務集群有多臺機器,到底要去哪個機房哪臺機器定位某條報錯信息。
  • 同一個接口可能有多次請求,到底是哪一次報錯了。
  • 多個服務之間調(diào)用順序是怎樣的。
  • 如果需要響應速度優(yōu)化,到底是哪個環(huán)節(jié)哪個服務耗時了,如何定位。

1、面試官:

分布式微服務環(huán)境下那么多機器,調(diào)用鏈又很長,你們是如何定位問題的?

問題分析這個問題,如果你使用過微服務框架,對于服務治理你一定知道這種技術,如果作為微服務架構(gòu)的小白,你只是知道一些基礎知識,突然被問到這個問題,確實比較懵逼。這么多機器集群,我怎么知道每次服務打到哪個機器上了,我怎么知道到底是哪個環(huán)節(jié)拋異常了?

我:分布式系統(tǒng)中針對上述問題,我們急需一套鏈路追蹤(Trace)系統(tǒng)來解決這些痛點,這個系統(tǒng)主要的任務就是收集各服務的日志,上報日志,分析日志,保存展示。其關鍵核心在于調(diào)用鏈,為每個請求生成全局唯一的ID(Traceld),通過Traceld 將不同系統(tǒng)的“孤立地”調(diào)用信息關聯(lián)在一起,還原出更多有價值的數(shù)據(jù)。

(如果你還不明白到底怎么搞直接看看成品圖)

圖片描述

通過一個Trace查詢某一次請求,這個Trace是全劇唯一,通過這個鏈路追蹤系統(tǒng),你可以清楚的知道服務調(diào)用深度,涉及服務個數(shù),每個服務調(diào)用的時間及狀態(tài),到底是哪個服務出現(xiàn)異常,具體到方法名,查找耗時長的鏈路時,可以通過在查詢結(jié)果頁面點擊“耗時”二字,讓數(shù)據(jù)以耗時升序或降序排列,都一目了然,上面的問題都得到解決了。

2、面試官:

你知道哪些成熟的調(diào)用鏈開源工具? 

Google Dapper

Dapper一開始是一個自包含的跟蹤工具,但后來發(fā)展成為一個監(jiān)控平臺,具有高性能,代碼侵入性低,支持集群擴展特性。

dapper 處理日志分為3個階段:

  • 各個服務將span數(shù)據(jù)寫到本機日志上;
  • dapper守護進程進行拉取日志文件,將文件讀到dapper收集器里;
  • dapper收集器將結(jié)果寫到bigtable中,一次跟蹤被記錄為一行。

阿里巴巴的分布式調(diào)用跟蹤系統(tǒng) - 鷹眼(EagleEye)

EagleEye 是一個以調(diào)用鏈追蹤技術為核心的監(jiān)控系統(tǒng),通過收集,存儲,分析分布式系統(tǒng)中的調(diào)用事件參數(shù),協(xié)同開發(fā)人員進行故障定位,容量預估,性能瓶頸定位,系統(tǒng)請求鏈路梳理等,EagleEye 的開發(fā)也是基于Google Dapper 的設計思想。

圖片描述

圖片描述

圖片來源:github EagleEye 社區(qū)

美團分布式會話追蹤系統(tǒng) - MTrace

MTrace是美團點評內(nèi)部的分布式會話跟蹤系統(tǒng),也借鑒了2010年Google的 dapper,通過一個全局的ID將分布在各個服務節(jié)點上的同一次請求串聯(lián)起來,還原原有的調(diào)用關系、追蹤系統(tǒng)問題、分析調(diào)用數(shù)據(jù)、統(tǒng)計系統(tǒng)指標,MTrace支持美團內(nèi)部RPC中間件,HTTP中間件,MySQL,Tair,MQ等中間件的數(shù)據(jù)埋點。

總結(jié)

無論哪個公司使用哪個框架,我們發(fā)現(xiàn) trace 系統(tǒng)最終要解決的問題都是相同的,大致歸納如下:

  • 復雜網(wǎng)絡環(huán)境中定位問題,通過異常log綁定記錄,輕松定位。
  • 發(fā)現(xiàn)熱點,發(fā)現(xiàn)瓶頸問題。
  • 預估系統(tǒng)容量,按照上下游調(diào)用比例,粗略計算哪些機器需要提前擴容。
  • 優(yōu)化鏈路,通過鏈路分析,從更高的全局角度分析可以優(yōu)化的點。

以上就是分布式系統(tǒng)下調(diào)用鏈追蹤技術面試題的詳細內(nèi)容,更多關于分布式系統(tǒng)下調(diào)用鏈追蹤的資料請關注腳本之家其它相關文章!

相關文章

  • Idea啟動多個SpringBoot項目的3種最新方案

    Idea啟動多個SpringBoot項目的3種最新方案

    SpringBoot自帶Tomcat,直接運行main方法里面的SpringApplication.run即可,并且訪問時不需要帶項目名,這篇文章主要介紹了Idea啟動多個SpringBoot項目的3種方案,需要的朋友可以參考下
    2023-02-02
  • IDEA部署Tomcat的超詳細圖文教程

    IDEA部署Tomcat的超詳細圖文教程

    最近迫于無奈從我哪破舊的Eclipse轉(zhuǎn)換到了IDEA,然后就是超多的不習慣,下面這篇文章主要給大家介紹了關于IDEA部署Tomcat的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-02-02
  • springboot+gradle 構(gòu)建多模塊項目的步驟

    springboot+gradle 構(gòu)建多模塊項目的步驟

    這篇文章主要介紹了springboot+gradle 構(gòu)建多模塊項目的步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • 一個處理用戶登陸的servlet簡單實例

    一個處理用戶登陸的servlet簡單實例

    這篇文章主要介紹了一個處理用戶登陸的servlet簡單實例,可通過servlet實現(xiàn)處理用戶登錄的功能,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-01-01
  • SpringBoot?使用?Sa-Token?完成注解鑒權功能(權限校驗)

    SpringBoot?使用?Sa-Token?完成注解鑒權功能(權限校驗)

    Sa-Token?是一個輕量級?java?權限認證框架,主要解決登錄認證、權限認證、單點登錄、OAuth2、微服務網(wǎng)關鑒權?等一系列權限相關問題,這篇文章主要介紹了SpringBoot使用Sa-Token完成注解鑒權功能,需要的朋友可以參考下
    2023-05-05
  • SpringBoot雪花算法主鍵ID傳到前端后精度丟失問題的解決

    SpringBoot雪花算法主鍵ID傳到前端后精度丟失問題的解決

    本文主要介紹了SpringBoot雪花算法主鍵ID傳到前端后精度丟失問題的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • Java內(nèi)存模型知識匯總

    Java內(nèi)存模型知識匯總

    本文中,有很多定義和說法,都是筆者自己理解后定義出來的。希望能夠讓讀者可以對Java內(nèi)存模型有更加清晰的認識。當然,如有偏頗,歡迎指正。
    2018-09-09
  • Java 實戰(zhàn)范例之線上新聞平臺系統(tǒng)的實現(xiàn)

    Java 實戰(zhàn)范例之線上新聞平臺系統(tǒng)的實現(xiàn)

    讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+jsp+jdbc+mysql實現(xiàn)一個線上新聞平臺系統(tǒng),大家可以在過程中查缺補漏,提升水平
    2021-11-11
  • Java精品項目瑞吉外賣之新增菜品與分頁查詢篇

    Java精品項目瑞吉外賣之新增菜品與分頁查詢篇

    這篇文章主要為大家詳細介紹了java精品項目-瑞吉外賣訂餐系統(tǒng),此項目過大,分為多章獨立講解,本篇內(nèi)容為新增菜品和分頁查詢功能的實現(xiàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • java的Map集合中按value值進行排序輸出的實例代碼

    java的Map集合中按value值進行排序輸出的實例代碼

    下面小編就為大家?guī)硪黄猨ava的Map集合中按value值進行排序輸出的實例代碼。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08

最新評論