Linux

如何用大量文件對 XFS 的性能進行基準測試?

  • August 26, 2017

我有一個伺服器執行一些程式碼,這些程式碼在一個目錄中創建了數百萬個小文件。起初,程式碼執行得非常快。大約一天后,它開始放緩很多。我試圖弄清楚這是否是程式碼問題,或者這是否是目錄中文件數量的問題。

如果文件不存在,程式碼本身會創建一個文件,然後打開該文件並向其中寫入一行。如果該文件確實存在,它將打開該文件並在其上附加一行。

話雖如此,我一直在對我的程式碼進行基準測試並根據需要進行更改,但我也想對 XFS 進行基準測試,看看這是否是瓶頸。我的問題是,我如何對 XFS 的讀/寫性能進行基準測試?

從您的應用程序開始,了解它的性能。

  • 將檢測添加到您的程式碼中,以便您可以測量任務需要多長時間。
  • 監控主機作業系統指標,例如 CPU 和儲存 IOPS。
  • 具有動態跟踪的文件系統和塊設備響應時間,例如xfsslowerbioslower
  • 使用類似工具擷取配置文件,perf record這樣您就可以通過火焰圖視覺化查看 CPU 上的熱點。嘗試使用核心和使用者程序的調試符號。

一個目錄中的數百萬個文件通常不是一個好主意。即使它受支持,您也會獲得需要很長時間才能列出的巨大目錄元數據。考慮您的應用程序創建一個目錄結構,將每個目錄的文件限制為幾千個。

引用自:https://serverfault.com/questions/870355