sudo vim /etc/sysctl.confhtml
vm.max_map_count=655360
net.core.rmem_default=262144
net.core.rmem_max=2097152
net.core.wmem_default=262144
net.core.wmem_max=2097152
#net.core.somaxconn = 655360
#該值在inet_listen()函數中被限制爲不得超過USHRT_MAX(即65535),不然會報錯「sysctl: setting key "net.core.somaxconn": 無效的參數」
net.core.somaxconn = 65535vim
執行 sudo sysctl -p 生效
查看當前已生效的參數: sudo sysctl -a | grep ${param}緩存
sudo vim /etc/security/limits.conf | /etc/security/limits.d/90-nproc.confbash
修改文件是重啓進程 | 持久化生效。對徹底相同的參數配置項,/etc/security/limits.d/90-nproc.conf 會覆蓋掉 /etc/security/limits.conf網絡
* soft nofile 655360 * hard nofile 655360 * soft nproc 8096 * hard nproc 8096
修改進程限制當即生效(臨時)app
sudo prlimit --pid <pid> --<limit>=<soft>:<hard> sudo prlimit --pid 12345 --nofile=655350:655350 sudo prlimit --pid 12345 --nofile=655350
參數名稱 | 解釋說明 |
sudo blockdev --setra 16384 /dev/sdx | 磁盤隊列 |
sudo sh -c 'echo "4096" > /sys/block/sdx/queue/nr_requests' | 預讀大小 |
sudo sh -c 'echo "500" > /proc/sys/vm/dirty_writeback_centisecs' | 控制內核的髒數據刷新進程pdflush的運行間隔 |
sudo sh -c 'echo "35" > /proc/sys/vm/dirty_ratio' | 控制文件系統的文件系統寫緩衝區的大小,當大於閥值控制pdflush進程什麼時候刷盤,當前寫髒pagecache佔用物理內存的比例大於閥值刷新到磁盤 |
sudo sh -c 'echo "5" > /proc/sys/vm/dirty_background_ratio' | 百分值,保留過時頁緩存(髒頁緩存)的最大值。是以MmeFree+Cached-Mapped的值爲基準的 |
sudo sh -c 'echo "2000" > /proc/sys/vm/dirty_expire_centisecs' | 1/100秒。緩存頁裏數據的過時時間(舊數據),在下一個週期內被寫入硬盤。默認30秒是一個很長的時間 |