<dl id="g0gtau"></dl><dl id="g0gtau"></dl>
                          睿思衆淘 睿思衆測 聯系我們 網站地圖

                          企業選擇後端應用性能監控産品關鍵之二:代碼診斷的能力2019/03/04

                          大家都知道,一款後端應用性能監控産品由兩大核心功能組成。首先,即是上一篇文章小睿講到的邏輯拓撲能力,用于幫助運營及運維人員透視其應用系統複雜的邏輯關系。而當拓撲清晰展現之後,還需要更細粒度問題定位分析,也就是第二個核心功能--代碼診斷。

                          今天,小睿就爲大家解析一下後端APM産品的關鍵能力之二:代碼診斷的能力。

                          代碼診斷作爲應用性能剖析最深的一環,需將在用戶層面或應用層面已經暴露或暫未暴露的問題逐層下鑽剖析,使故障的根因定位在代碼層,甚至細化到某個函數的調用。這樣才能最大程度的縮短排障的時間,提升問題解決的效率。

                          代碼診斷的具體技術方法分爲兩種,即:熱點方法分析和全棧方法分析。

                          熱點方法分析

                          國內市場中絕大部分APM廠商普遍采用的是熱點方法分析。通過對特定的熱點方法進行預先打點插碼,而後該方法被調用時就會被記錄,最終通過method事件隊列的enter/leave事件便可生成帶有時間的方法調用樹,即調用堆棧。這一技術方法比較適用于程序結構較爲簡單且自建函數較少的應用系統,而對于複雜程序來說,這種方法會因爲插碼過多而占用過量的系統資源,對業務程序響應速度造成直接拖累。並且,插碼的方法需要用戶自行手動配置,易用性較差。

                          而現在絕大多數的用戶無法事先確定哪些方法應是熱點方法,所以無法進行事先打點插碼。在此情況下,需要一種無須用戶配置即能自動捕獲業務請求處理過程中代碼執行所有方法的技術方案--全棧方法分析。

                          全棧方法分析

                          目前國內僅博睿宏遠實現了全棧方法分析,通過自研的SuperTrace技術對目標線程定時掃描,獲取到該線程當前代碼堆棧信息並記錄時間戳,再通過算法對大量的時間戳進行分析比對,最終得出每一個方法的真實時間損耗,從而生成完整的代碼堆棧分析數據,這樣便無需事先告知熱點方法,可直接無腦匹配所有業務應用系統,並且對系統資源的影響完全可控,大大提升了易用性與便捷性。


                          此外,由業務調用鏈爲分析入口進行代碼分析則更加符合當下越來越複雜的應用系統背景:首先博睿宏遠強大的拓撲能力能夠幫助用戶輕松梳理系統複雜的邏輯關系,將問題縮小到業務請求的範疇,進而代碼診斷則是對問題進一步的精確定位。這兩大核心功能相輔相成,全力幫助企業的IT運營團隊實現高效監控,直觀快速定位問題,讓問題排障更快速!