我刚刚在我的 xubuntu 上安装了 owncloud 服务器,现在我的机器上至少有 10 个 apache2 进程正在运行。
当我停止 apache 服务时
sudo service apache2 stop
apache2的所有进程都消失了。
安装了owncloud服务器后正常吗?
答案1
是的,这很正常,不需要对 OwnCloud 本身做任何事情,但与你配置 apache 的方式有关。在默认安装中,您将使用 Apache MPM(多处理模块)Prefork。
来自 Apache Apache MPM prefork 文档:
单个控制进程负责启动子进程,这些子进程侦听连接并在连接到达时为其提供服务。 Apache 总是尝试维护几个备用或空闲的服务器进程,这些进程随时准备为传入的请求提供服务。通过这种方式,客户端不需要等待新的子进程被派生,他们的请求就可以得到服务。
因此,随着您拥有的客户端连接越多,您将获得的进程也越多。
您可以在中配置该模块
/etc/apache2/mods-enabled/mpm_prefork.conf
# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxRequestWorkers: maximum number of server processes allowed to start
# MaxConnectionsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxRequestWorkers 150
MaxConnectionsPerChild 0
</IfModule>
您还可以使用 Apache MPM Worker
查看http://www.garron.me对于差异: 了解 Apache 2 MPM(worker 与 prefork)