Sql-Server
啟用擴展事件的成本是多少?
我一直在處理死鎖,特別是獲取他們的資訊,正如你在這篇文章中看到的那樣。
在同一篇文章中,Shanky推薦了“您現在必須依靠擴展事件跟踪來擷取死鎖資訊”
我的問題是:
使用擴展事件是否會增加 CPU?
它使用了多少記憶體、磁碟空間和 I/O?
任何指向相關文件的連結都將是一個獎勵。
當然,與伺服器上的任何其他程序一樣,CPU 也會增加。但是由於執行它們的資源需求低,因此建議使用擴展事件。例如,使用擴展事件來擷取資訊比使用久負盛名的分析器工具佔用的資源要少得多。當然,明智地使用它,不要設置和執行數千個會話來擷取大量數據,那麼你可能會遇到問題。我們在我們自己的伺服器上使用擴展事件來審計不同的程序,根據我們的經驗,我們幾乎沒有看到 CPU 活動有明顯的增加。是的,它需要一些磁碟空間來記錄它收集的所有數據,但同樣,請提前考慮併計劃保存它以盡可能減少對生產環境的影響。
至於第二個問題:這取決於,像往常一樣。每個系統、平台和配置都不同,沒有一個是完全不同的。因此,如果無法告訴您將佔用多少 RAM、CPU、磁碟空間或 IO。但肯定不會這麼多。同樣,使用常識,不要啟動數百個會話來擷取數以百萬計的數據,因為那樣顯然你會在性能上受到懲罰。