Apache Prefork MPM配置

Prefork是Apache默认的多处理模块。
当我们开始作为系统管理员工作时,我们通常要处理低流量服务器。
我们不需要知道Apache如何同时处理多个进程。
就连我也不知道。
但是当我们开始使用高负载服务器时,我们需要优化Apache。
此时,了解Apache中的多处理模块及其工作原理是很重要的

Apache Prefork默认配置

下面是Apache版本的缺省Prefork多处理模块配置,如下所示。

适用于Apache 2.4

StartServers 3
MinSpareServers 5
MaxSpareServers 10
MaxRequestWorkers 400
MaxConnectionsPerChild 0

用于Apache 2.2

StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0

Prefork配置指令:

1. StartServers
这个指令定义了Apache启动时要创建的子服务器进程的数量。
进程的数量是根据服务器负载动态增加的,因此通常不需要更改这个值。
2. MinSpareServers
这是Apache运行的空闲子进程的最小数目,它总是等待连接的到来。
如果最小空闲进程小于MinSpareServers值,Apache将启动一个子进程来维护最小空闲服务器。
3. MaxSpareServers
这是可以处于空闲状态的最大进程数。
如果空闲进程超过MaxSpareServers值,父进程会杀死多余的空闲子进程。
4. MaxClients and MaxRequestWorkers
这是最重要的prefork指令。
这个定义的Apache服务器可以处理的最大请求数。
如果连接或请求的最大数量超过这个值,所有额外的请求都需要在队列中等待。
保持这个值在硬件允许的范围内尽可能高。

日期:2019-05-19 01:25:29 来源:oir作者:oir