1. 程式人生 > >如何調整“作業系統的中開啟檔案的最大控制代碼數”?

如何調整“作業系統的中開啟檔案的最大控制代碼數”?

使用/proc檔案系統來控制系統
/proc/sys/fs
/proc/sys/fs/file-max
該檔案指定了可以分配的檔案控制代碼的最大數目。如果使用者得到的錯誤訊息宣告由於開啟檔案數已經達到了最大值,從而他們不能開啟更多檔案,則可能需要增加該值。可將這個值設定成有任意多個檔案,並且能通過將一個新數字值寫入該檔案來更改該值。

預設設定:4096

/proc/sys/fs/file-nr
該檔案與 file-max 相關,它有三個值:
已分配檔案控制代碼的數目
已使用檔案控制代碼的數目
檔案控制代碼的最大數目
該檔案是隻讀的,僅用於顯示資訊。

所以不存在兩個檔案的配合修改問題,主要修改file-max就行了

3. ulimit -a中
open files                    (-n) 1024

也即是ulimit -n

-n     The maximum number of open file descriptors (most systems
                     do not allow this value to be set)

ulimit -n <可以同時開啟的檔案數> 設定使用者可以同時開啟的最大檔案數(max open files)

  例如:ulimit -n 8192   

  如果本引數設定過小,對於併發訪問量大的網站,可能會出現too many open files的錯誤