轉:https://blog.csdn.net/xcbeyond/article/details/83033984
首先,您需要了解什么是微服務架構設計,同時了解相關微服務與Docker介紹, 微服務架構的本質,是把整體的業務拆分成很多有特定明確功能的服務,通過很多分散的小服務之間的配合,去解決更大,更復雜的問題。對被拆分后的服務進行分類和管理,彼此之間使用統一的接口來進行交互。
微服務的特點決定了功能模塊的部署是分布式的,以往在單應用環境下,所有的業務都在同一個服務器上,如果服務器出現錯誤和異常,我們只要盯住一個點,就可以快速定位和處理問題,但是在微服務的架構下,大部分功能模塊都是單獨部署運行的,彼此通過總線交互,都是無狀態的服務,這種架構下,前后台的業務流會經過很多個微服務的處理和傳遞,我們難免會遇到這樣的問題:
分散在各個服務器上的日志怎么處理?
如果業務流出現了錯誤和異常,如何定位是哪個點出的問題?
如何快速定位問題?
如何跟蹤業務流的處理順序和結果?
我們發現,以前在單應用下的日志監控很簡單,在微服務架構下卻成為了一個大問題,如果無法跟蹤業務流,無法定位問題,我們將耗費大量的時間來查找和定位問題,在復雜的微服務交互關系中,我們就會非常被動。
以下基於微服務監控案例之一
監控原則:
- 將更多的時間用於編寫對數據指標的意義進行分析的代碼,而不是用於編寫收集、移動、保存以及顯示指標的代碼。
- 讓關鍵業務指標的延遲降低到人類注意力的持續時間以下 (約10秒左右)。
- 請驗證你的衡量系統是否具有足夠的精確度與准確度,並將收集到的響應時間數據以柱狀圖表示。
- 對於比目前監控中的系統(與服務)需要更高可用性與可伸縮性的系統進行監控。
- 對分布式的、短期的、“cloud native”、容器化的微服務的監控進行優化。
- 讓指標與你的模型相一致,以便理解它們之間的關系
問題與需求
我們想要價值
-
實時抓取數據,實時分析統計,生成統計和報表
-
可視化的報表系統,更快的了解系統運行狀態
-
搜索功能,快速的定位關鍵問題
-
數據挖據,利用優秀的數據分析能力和數據模型,進行數據預測