Apache 2 MPM Prefork 模块参数的微调

Apache 2 MPM Prefork 模块参数的微调

我在一台 Linux Debian 机器(内核 2.6,Debian 5)上运行 Apache 2,内存为 3GB。该服务器每 24 小时应处理大约 2 亿个请求。有人能告诉我以下 mpm_prefork 参数的值应该是多少才能适合这种负载吗?我想要设置的参数是:

  1. 服务器限制
  2. 启动服务器
  3. 最小备用服务器
  4. 最大备用服务器数
  5. 最大客户数
  6. 每个子进程的最大请求数

我还想知道MaxKeepAliveRequests参数的值应该是什么。

提前 10 倍

答案1

在你能够处理一百万个请求之前,你的内存就会耗尽。你的 Apache 客户端进程有多大?我敢打赌超过 10MB(可能是 25MB)。如果客户端只有 10MB,你的服务器可能只能处理 250 个客户端。

可以尝试使用 fast-cgi 的 lighttpd。

要回答你的问题,你需要为我编辑 mpm.conf 文件 /etc/apache2/modules.d/00_mpm.conf,但我使用的是 gentoo,因此根据你使用的 Linux 发行版,情况会有所不同。但在该配置中有一个 prefork 部分

这是我的一台具有 12Gb 内存的服务器。(我们对 20 台相同服务器的站点进行负载平衡)

<IfModule mpm_prefork_module>
        StartServers            100
        MinSpareServers          5
        MaxSpareServers         200
        ServerLimit             375
        MaxClients              375
        MaxRequestsPerChild      0
</IfModule>

相关内容