在大型雲基礎設施的管理中,即便是微小的性能下降也可能導致顯著的資源浪費。例如,在 Meta 這樣的公司中,一項應用的運行速度下降0.05% 看似微不足道,但在數百萬臺服務器同時運轉的情況下,這種微小的延遲會積累成數千臺服務器的浪費。因此,及時發現並解決這些微小的性能迴歸對 Meta 來說是一項巨大的挑戰。

爲了解決這個問題,Meta AI 推出了 FBDetect,這是一個針對生產環境的性能迴歸檢測系統,能夠捕捉到最小的性能迴歸,甚至低至0.005%。FBDetect 能夠監控約80萬個時間序列,涵蓋了吞吐量、延遲、CPU 和內存使用等多個指標,涉及數百項服務和數百萬臺服務器。通過採用創新技術,如跨整個服務器集羣的堆棧跟蹤採樣,FBDetect 能夠捕捉到細微的子程序級別的性能差異。

FBDetect 主要關注子程序級別的性能分析,這樣可以將檢測的難度從0.05% 的應用級別迴歸降低到更易於識別的5% 子程序級別變化。這種方法顯著減少了噪聲,使得跟蹤變化變得更爲實用。
FBDetect 的技術核心包含三個主要方面。首先,它通過子程序級別的迴歸檢測,減少性能數據的方差,使得微小的迴歸也能夠被及時識別。其次,系統會在整個服務器集羣上進行堆棧跟蹤採樣,精確測量每個子程序的性能表現,類似於在大規模環境中進行性能分析。最後,對於每一次檢測到的迴歸,FBDetect 會進行根本原因分析,以判斷迴歸是由臨時問題、成本變化還是實際代碼更改所導致。
FBDetect 經過七年的實際生產環境測試,具備強大的抗干擾能力,可以有效過濾掉虛假的迴歸信號。這一系統的引入不僅能顯著減少開發人員需要調查的事件數量,還可以提升 Meta 基礎設施的效率。通過檢測到的小幅迴歸,FBDetect 每年幫助 Meta 避免了約4000臺服務器的資源浪費。
在 Meta 這樣擁有數百萬臺服務器的大型企業中,性能迴歸的檢測顯得尤爲重要。FBDetect 以其先進的監測能力,不僅提高了對微小回歸的識別率,還爲開發人員提供了有效的根本原因分析手段,有助於及時解決潛在問題,從而推動整個基礎設施的高效運行。
論文入口:https://tangchq74.github.io/FBDetect-SOSP24.pdf
劃重點:
🔍 FBDetect 能夠監測到微小的性能迴歸,甚至低至0.005%,極大提高了檢測精度。
💻 該系統覆蓋約80萬個時間序列,涉及多個性能指標,並能夠在大規模環境中進行精準分析。
🚀 FBDetect 經過七年的實際應用,幫助 Meta 每年避免約4000臺服務器的資源浪費,提高了基礎設施的整體效率。
