1. 按FPM进程实际占用内存大小排序
ps -ylC php-fpm --sort:rss
这样的结果是按KB
大小显示的, 而ps
命令本身不支持将其转换为按MB
显示, 所以需要使用awk
ps -ylC php-fpm --sort:rss | awk 'NR>1 {$8=int($8/1024)"M";}{ print;}'
2. 查看所有FPM进程占用内存的平均值
ps --no-headers -o "rss,cmd" -C php-fpm | awk '{ sum+=$1 } END { printf ("%d%s\n", sum/NR/1024,"M") }'
这样计算完之后就可以根据自己机器内存的大小设置合适的pm.max_children的值了.