您好,登錄后才能下訂單哦!
這篇文章給大家介紹SkyWalking分布式鏈路追蹤的示例分析,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
SkyWalking是一個(gè)開源 APM系統(tǒng),包括針對(duì) Cloud Native體系結(jié)構(gòu)中的分布式系統(tǒng)的監(jiān)視、跟蹤、診斷功能。核心功能如下:
- 服務(wù)、服務(wù)實(shí)例、端點(diǎn)指標(biāo)分析
- 根本原因分析,在運(yùn)行時(shí)分析代碼
- 服務(wù)拓?fù)鋱D分析
- 服務(wù)、服務(wù)實(shí)例和端點(diǎn)依賴性分析
- 檢測(cè)到慢速服務(wù)和端點(diǎn)
- 性能優(yōu)化
- 分布式跟蹤和上下文傳播
- 數(shù)據(jù)庫訪問指標(biāo)。檢測(cè)慢速數(shù)據(jù)庫訪問語句(包括 **SQL** 語句)
- 報(bào)警
SkyWalking 目前是 Apache 頂級(jí)項(xiàng)目,作為這么優(yōu)秀的開源項(xiàng)目,它的架構(gòu)設(shè)計(jì)理念肯定會(huì)有很多值得我們借鑒。
消息中間件選型生態(tài)方法論
中間件是為應(yīng)用提供通用服務(wù)和功能的軟件。數(shù)據(jù)管理、應(yīng)用服務(wù)、消息傳遞、身份驗(yàn)證和 **API** 管理通常都要通過中間件。中間件可以幫助開發(fā)人員更有效地構(gòu)建應(yīng)用。它就如同是應(yīng)用、數(shù)據(jù)與用戶之間的紐帶。
對(duì)于具有多云和容器化環(huán)境的企業(yè)而言,中間件可以助您大規(guī)模、經(jīng)濟(jì)高效地開發(fā)和運(yùn)行應(yīng)用。
中間件是介于操作系統(tǒng)和在其上運(yùn)行的應(yīng)用程序之間的軟件。中間件實(shí)質(zhì)上充當(dāng)隱藏轉(zhuǎn)換層,實(shí)現(xiàn)了分布式應(yīng)用程序的通信和數(shù)據(jù)管理。它有時(shí)被稱為管道,因?yàn)樗鼘蓚€(gè)應(yīng)用程序連接在一起,使數(shù)據(jù)和數(shù)據(jù)庫可在“管道”間輕松傳遞。通過中間件,用戶可執(zhí)行很多請(qǐng)求,例如在 **Web** 瀏覽器上提交表單,或者允許 **Web** 服務(wù)器基于用戶的配置文件返回動(dòng)態(tài)網(wǎng)頁。
常見的中間件示例包括數(shù)據(jù)庫中間件、應(yīng)用程序服務(wù)器中間件、面向消息的中間件、**Web** 中間件和事務(wù)處理監(jiān)視器。每個(gè)程序通常都會(huì)提供消息傳遞服務(wù),讓不同的應(yīng)用程序可使用簡單對(duì)象訪問協(xié)議(**SOAP**)、**Web** 服務(wù)、表述性狀態(tài)轉(zhuǎn)移(**REST**)和 **JavaScript** 對(duì)象表示法(**JSON**)等消息傳遞框架進(jìn)行通信。雖然所有中間件都執(zhí)行通信功能,但公司選用的類型將取決于要使用的服務(wù)以及需要傳達(dá)的信息類型。這可包括安全身份認(rèn)證、事務(wù)管理、消息隊(duì)列、應(yīng)用程序服務(wù)器、**Web** 服務(wù)器和目錄。中間件還可用于實(shí)時(shí)發(fā)生的操作的分布式處理,而不是來回發(fā)送數(shù)據(jù)。
這里我要重點(diǎn)分析的是消息中間件,基于消息的中間件可以說是我們?nèi)粘i_發(fā)中經(jīng)常接觸和使用的,這個(gè)屬于常規(guī)技術(shù)棧。
消息中間件,那么我在這里也不會(huì)一一對(duì)比,因?yàn)榫W(wǎng)上對(duì)比的文章太多了,現(xiàn)階段主流的使用頻率非常高的就兩款,**Kafka**和**RocketMQ**。
簡單說明下場景,比較精辟。**Kafka**適用于高吞吐量,然后能夠容忍一部分消息丟失,比如日志收集場景,**RocketMQ**使用于高可靠性和一定的吞吐量的業(yè)務(wù)場景,比如金融支付場景。
中間件選型的方法論其實(shí)很簡單,就是要從業(yè)務(wù)場景和中間件功能的匹配度程度以及維護(hù)這么一套系統(tǒng)的成本來考慮。從長遠(yuǎn)的角度就是擴(kuò)展和成本,從短期角度也是收益和成本。
我們通常從技術(shù)的角度,比如高可用、高性能、高并發(fā)以及高吞吐量連判斷一個(gè)消息中間件,但是其實(shí)任何一個(gè)能夠開源出來的中間件,其實(shí)都不差,重點(diǎn)是在我們?cè)趺词褂茫⒛軌虺酝冈?,這樣才能真正發(fā)揮它的價(jià)值,我見過好多團(tuán)隊(duì)在使用開源的消息中間件的時(shí)候經(jīng)常吐槽,說很爛,很不好用,但是你要想想,如果是你自己寫,花半年的時(shí)間寫出來的消息中間件可能還不如人家的,也有可能到處都是 **bug**,因?yàn)槟愕臎]有更多的業(yè)務(wù)場景來驗(yàn)證,開源的消息中間件至少已經(jīng)被社區(qū)的人植入了更多更廣泛的業(yè)務(wù)場景。
關(guān)于SkyWalking分布式鏈路追蹤的示例分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。