owncloud 服务器安装后运行的 apache2 的多个实例

owncloud 服务器安装后运行的 apache2 的多个实例

我刚刚在我的 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)

相关内容