[如果都連不上 那就沒辦法了,重啟機器連上在說]
打命令就界面提示 -bash: fork: Cannot allocate memory 一直提示:無法分配內存
后面找了一頓猛如虎的排查到問題點了 就是進程連接滿了 無法連接上新進程了
就是圖下面這樣的了
-bash: fork: Cannot allocate memory 一連串的無法分配內存
系統默認的pid_max 值為32768,查詢現有的進程數**#cat /proc/sys/kernel/pid_max**
正常情況下是夠用的,當我們跑重量任務時,會不夠用,最終導致內存無法分配的錯誤,然而連不上的悲劇
查詢可連接最大進程數cat /proc/sys/kernel/pid_max
查詢現有的連接進程數 pstree -p|wc -l
查詢現有的進程數 pstree -p|wc -l
然后把設置最大 pid_max
臨時修改最大進程數 [重啟后就失效]
#echo 1000000 > /proc/sys/kernel/pid_max
永久修改最大進程數 [重啟后不失效]
#echo "kernel.pid_max=1000000 " >> /etc/sysctl.conf
#sysctl -p