[GCP 教學] Cloud Profiler 是 Cloud Trace 什麼東東?

我常常搞混這兩個東西,我每次考 GCP 證照都會弄錯,真的好幾十次,所以特別寫下來,防止再次搞混。

官網 Cloud Profiler 介紹:

Cloud Profiler 可持續分析在應用程式執行時,那些占用大量 CPU 運算資源或記憶體的函式效能,並據此改善問題。

Cloud Profiler 會以互動式火焰圖呈現相關函式的呼叫階層與資源耗用情形,協助開發人員瞭解哪些路徑使用最多資源,以及程式碼的各種實際呼叫方式。

https://cloud.google.com/profiler?hl=zh-tw

官網 Cloud Trace 介紹:

收集應用程式的 Latency 資料,並且即時呈現。

Cloud Trace 專門用於分散式追蹤,能夠追蹤和分析服務之間的請求 Latency,特別適合微服務架構中的效能監控。

https://cloud.google.com/trace/docs

Cloud Profiler vs Cloud Trace 比較表

比較面向Cloud ProfilerCloud Trace
主要用途CPU 和記憶體使用情況分析分贿式系統的 Request 追蹤
監控重點– CPU 使用率– 服務間的 Request Latency
– 記憶體分配– 請求路徑追蹤
– 程式碼熱點 (Hot Spots)– 服務依賴關係
– 函數執行時間– 端到端 Latency 分析
使用場景– 效能優化– 微服務架構監控
– 資源使用分析– API 延遲分析
– 程式碼效率提升– 服務依賴診斷
– 記憶體洩漏檢測– 系統瓶頸識別
收集數據類型– CPU profiles– 請求延遲
– Heap profiles– 請求路徑
– Wall-time profiles– HTTP headers
– Contention profiles– RPC 調用信息
支援語言– Java– Java
– Go– Go
– Node.js– Node.js
– Python– Python
– C++– PHP
– .NET– Ruby
視覺化方式– 火焰圖 (Flame Graphs)– 分布式追蹤圖
– 調用樹– 瀑布圖
– 熱點圖– 延遲分佈圖
性能影響較低,通常 < 5%極低,通常 < 1%
適用開發階段– 開發環境– 所有環境
– 測試環境– 特別適合生產環境
– 生產環境
整合性與 Cloud Console 整合與 Cloud Console 和 Cloud Monitoring 整合
主要優勢– 深入的程式碼級分析– 分布式系統可視化
– 資源使用優化– 端到端監控
– 性能瓶頸識別– 系統依賴分析

返回頂端