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