[Nginx] 增加檔案快取設定,提升網站讀取速度

前陣子夥伴在經營的 #WordPress 網站中因為有一篇內容被大量轉發,導致 #流量爆衝 ,但說也奇怪的是 #主機 等級應該是還夠的,怎就會讓人覺得 #網站很慢 ?

觀察主機資訊,系統顯示正處在高磁碟讀寫狀態(High Disk IO),一開始還以為是哪一個程式有問題,怎麼找都沒找到,#PHP #slow #log 也都看起來不太像。

最後找到這篇文章「Nginx’s Open file cache」才想到沒做這回事。

隨後將 #Nginx 補上這 #檔案快取 設定,果然網站因為流量湧入而造成的高磁碟讀寫開始降下來,情況也趨於緩和。

修改方式

設定在 nginx.conf


open_file_cache max=10000 inactive=5m; open_file_cache_valid 2m; open_file_cache_min_uses 1; open_file_cache_errors on;

inactive 為判斷不活躍檔案的時間區間,搭配 open_file_cache_min_uses 設定最少個請求數來處理快取的保存時間。

max 數量部份可以使用指令


find ./ -type f | wc -l

查詢該目錄下現有的檔案數量,再加上一些緩衝數。

這邊如果請求數跟不活躍的時間區間設定很大,就代表將把很多可能很少被存取的檔案也一併被塞到記憶體去一段時間不放,屬於有錢就任性的玩法XD(亂槍打鳥的概念)

反之,從流量、檔案存取的角度去觀察,設定得當就可以精準打到某些正在活躍的內容,以及把省下來的資源讓出來給其他程序運作。

- Powered by Mxp.TW -FB2WP-

Facebook 功能:

Share: