在ubuntu的精确的Apache 2.2.22 Apache进程的目的

使用工人MPM,StartServers 3和ThreadsPerChild 25,我们看到以下内容。

vagrant@precise64:$ sudo apachectl -v Server version: Apache/2.2.22 (Ubuntu) Server built: Feb 13 2012 01:51:56 vagrant@precise64:$ ps -aef | grep apache2 root 6147 1 0 01:41 ? 00:00:00 /usr/sbin/apache2 -k start www-data 6148 6147 0 01:41 ? 00:00:00 /usr/sbin/apache2 -k start www-data 6149 6147 0 01:41 ? 00:00:00 /usr/sbin/apache2 -k start www-data 6150 6147 0 01:41 ? 00:00:00 /usr/sbin/apache2 -k start www-data 6151 6147 0 01:41 ? 00:00:00 /usr/sbin/apache2 -k start vagrant@precise64:$ ps -aefL | grep apache2 | grep -v grep | awk '{print $2;}' | sort - n | uniq -c 1 6147 1 6148 27 6149 27 6150 27 6151 

很显然,pid 6147是主进程,6149,6150,6151是subprocess。 有人可以解释pid 6148的目的吗? 它不听任何端口。

谢谢,Sameer

也许是这样的:引用https://httpd.apache.org/docs/2.4/mod/worker.html

除了一组活动的subprocess之外,可能还有另外的subprocess正在终止,但至less有一个服务器线程仍在处理现有的客户端连接。 可能会出现MaxRequestWorkers终止进程,但实际数量可能会小得多。