<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Zipkin

          共 2170字,需瀏覽 5分鐘

           ·

          2020-11-09 02:49

          商品詳情

          商品亮點
          • 數(shù)據(jù)追蹤系統(tǒng)
          商品說明
          版本: V1.0 交付方式: 鏡像
          適用于: Linux 上架日期: 2020-07-14
          1.?簡介
          Zipkin,是一款開源的分布式實時數(shù)據(jù)追蹤系統(tǒng)。其主要功能是聚集來自各個異構(gòu)系統(tǒng)的實時監(jiān)控數(shù)據(jù)。

          2.?架構(gòu)
          ZipKin可以分為兩部分,一部分是zipkin?server,用來作為數(shù)據(jù)的采集存儲、數(shù)據(jù)分析與展示;zipkin?client是zipkin基于不同的語言及框架封裝的一些列客戶端工具,這些工具完成了追蹤數(shù)據(jù)的生成與上報功能。
          Zipkin?Server主要包括四個模塊:
          (1)Collector?接收或收集各應(yīng)用傳輸?shù)臄?shù)據(jù)
          (2)Storage?存儲接受或收集過來的數(shù)據(jù),當前支持Memory,MySQL,Cassandra,ElasticSearch等,默認存儲在內(nèi)存中。
          (3)API(Query)?負責查詢Storage中存儲的數(shù)據(jù),提供簡單的JSON?API獲取數(shù)據(jù),主要提供給web?UI使用
          (4)Web?提供簡單的web界面
          Instrumented?client和server是分別使用了ZipKin?Client的服務(wù),Zipkin?Client會根據(jù)配置將追蹤數(shù)據(jù)發(fā)送到Zipkin??Server中進行數(shù)據(jù)存儲、分析和展示。
          3.工作過程
          當用戶發(fā)起一次調(diào)用時,Zipkin?的客戶端會在入口處為整條調(diào)用鏈路生成一個全局唯一的?trace?id,并為這條鏈路中的每一次分布式調(diào)用生成一個?span?id。span?與?span?之間可以有父子嵌套關(guān)系,代表分布式調(diào)用中的上下游關(guān)系。span?和?span?之間可以是兄弟關(guān)系,代表當前調(diào)用下的兩次子調(diào)用。一個?trace?由一組?span?組成,可以看成是由?trace?為根節(jié)點,span?為若干個子節(jié)點的一棵樹。
          ?Zipkin?會將?trace?相關(guān)的信息在調(diào)用鏈路上傳遞,并在每個調(diào)用邊界結(jié)束時異步的把當前調(diào)用的耗時信息上報給?Zipkin?Server。Zipkin?Server?在收到?trace?信息后,將其存儲起來。隨后?Zipkin?的?Web?UI?會通過?API?訪問的方式從存儲中將?trace?信息提取出來分析并展示。

          4.核心數(shù)據(jù)結(jié)構(gòu)
          ????????????traceId:全局跟蹤ID,用它來標記一次完整服務(wù)調(diào)用,所以和一次服務(wù)調(diào)用相關(guān)的span中的traceId都是相同的,Zipkin將具有相同traceId的span組裝成跟蹤樹來直觀的將調(diào)用鏈路圖展現(xiàn)在我們面前。
          ????????????id:span的id,理論上來說,span的id只要做到一個traceId下唯一就可以
          ????????????parentId:父span的id,調(diào)用有層級關(guān)系,所以span作為調(diào)用節(jié)點的存儲結(jié)構(gòu),也有層級關(guān)系,就像圖3所示,跟蹤鏈是采用跟蹤樹的形式來展現(xiàn)的,樹的根節(jié)點就是調(diào)用調(diào)用的頂點,從開發(fā)者的角度來說,頂級span是從接入了Zipkin的應(yīng)用中最先接觸到服務(wù)調(diào)用的應(yīng)用中采集的。所以,頂級span是沒有parentId字段的
          ????????????name:span的名稱,主要用于在界面上展示,一般是接口方法名,name的作用是讓人知道它是哪里采集的span,不然某個span耗時高我都不知道是哪個服務(wù)節(jié)點耗時高
          ????????????timestamp:span創(chuàng)建時的時間戳,用來記錄采集的時刻。
          ????????????duration:持續(xù)時間,即span的創(chuàng)建到span完成最終的采集所經(jīng)歷的時間,除去span自己邏輯處理的時間,該時間段可以理解成對于該跟蹤埋點來說服務(wù)調(diào)用的總耗時
          ????????????annotations:基本標注列表,一個標注可以理解成span生命周期中重要時刻的數(shù)據(jù)快照,比如一個標注中一般包含發(fā)生時刻(timestamp)、事件類型(value)、端點(endpoint)等信息
          ????????????????事件類型
          ????????????????????????cs:客戶端/消費者發(fā)起請求
          ????????????????????????cr:客戶端/消費者接收到應(yīng)答
          ????????????????????????sr:服務(wù)端/生產(chǎn)者接收到請求
          ????????????????????????ss:服務(wù)端/生產(chǎn)者發(fā)送應(yīng)答
          ????????????????????ps:這四種事件類型的統(tǒng)計都應(yīng)該是Zipkin提供客戶端來做的,因為這些事件和業(yè)務(wù)無關(guān),這也是為什么跟蹤數(shù)據(jù)的采集適合放到中間件或者公共庫來做的原因。
          ????????????binaryAnnotations:業(yè)務(wù)標注列表,如果某些跟蹤埋點需要帶上部分業(yè)務(wù)數(shù)據(jù)(比如url地址、返回碼和異常信息等),可以將需要的數(shù)據(jù)以鍵值對的形式放入到這個字段中。
          5.優(yōu)點
          擴展性:使用http和json這種輕量級協(xié)議,比起使用探針和Thrift傳輸協(xié)議。更易于
          擴展和集成第三方接口。
          兼容性:對spring?cloud的支持更好。社區(qū)活躍度高,插件豐富。
          性能:支持自定義采樣策略。系統(tǒng)設(shè)計對性能優(yōu)化的更好。

          用戶案例

          暫無,請等待更新
          瀏覽 15
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产伦精品一区二区三区最新章节 | 91三级在线 | 六月丁香伊人 | 日韩va亚洲va欧美va清高 | 青青草在线撸 |