相信讀者已經對 Prometheus 在監控系統中的角色有所了解。
以上 Prometheus Server 的每一件工作,背後各不同的模組。
每個模組都有各自獨立的參數,而這些參數都是透過 config file 設定。
但每個模組彼此之間又互相依賴,使得 Prometheus Server 的啓動過程必須依序初始化。
Prometheus Server 啓動後,會持續運行,進行監控工作。
而我們已經知道 Prometheus 大部分的工作都是訂時觸發執行,並需要一段時間完成。例如拉資料或是合併檔案。於是 Prometheus Server 會有很多 goroutine 並行執行。
每個模組都會管理自己的 goroutine 池以及相應的 mutex。