0
我需要實現類似於tail -f的操作來讀取添加到日誌文件的新行並處理日誌文件翻轉。這適用於Solaris 10.目前,應用程序每秒都會檢查文件的狀態,如果文件已更改,則會打開文件,嘗試接近結尾並從文件末尾讀取文件。大文件的性能讀取結束
這一切似乎工作正常,但我很好奇日誌文件非常大時的性能影響。實際上是否需要通讀整個文件,還是足夠聰明才能加載文件的結尾?
我需要實現類似於tail -f的操作來讀取添加到日誌文件的新行並處理日誌文件翻轉。這適用於Solaris 10.目前,應用程序每秒都會檢查文件的狀態,如果文件已更改,則會打開文件,嘗試接近結尾並從文件末尾讀取文件。大文件的性能讀取結束
這一切似乎工作正常,但我很好奇日誌文件非常大時的性能影響。實際上是否需要通讀整個文件,還是足夠聰明才能加載文件的結尾?
lseek在一般用途中速度很快,即使對於大型文件也是如此。
查看更多的手冊頁。
根據特殊情況,它可能會減慢,但我從來沒有見過那些IRL。