调整AWS Apache服务器

时间:2016-06-12 07:55:39

标签: apache performance amazon-ec2

我正在尝试调整我的AWS apache服务器。我查了一下:

$: httpd/conf/httpd.conf

我无法找到此部分进行编辑:

<IfModule prefork.c>
    StartServers            10
    MinSpareServers         10
    MaxSpareServers         25
    ServerLimit             128
    MaxClients              128
    MaxRequestsPerChild     0
</IfModule>

如果上述设置不在,我会在哪里找到:httpd/conf/httpd.conf

4 个答案:

答案 0 :(得分:2)

确保已启用prefork模块(除非您已将其禁用,否则默认情况下已启用)。

您正在寻找的部分位于prefork配置文件中,在本例中,在启用的模块目录中:

   /etc/apache2/mods-enabled/mpm_prefork.conf

答案 1 :(得分:0)

这取决于如何编译apache。如果apache是​​使用mod_event而不是prefork编译的,则该部分可能不存在于apache httpd.conf文件中。在redhat / centos发行版上,httpd.conf文件的默认位置在/ etc / httpd / conf中。在debian / ubuntru发行版中,您将在/ etc / apache2

中找到httpd.conf

答案 2 :(得分:0)

影响apache性能的因素有很多。

  
      
  1. 调整JVM
  2.   
  3. 日志轮换政策
  4.   
  5. 调整linux内核参数
  6.   
  7. 调整apache MPM
  8.   

我认为你已经完成了前3个步骤,想要了解第4步。

步骤4.使用命令检查您正在使用哪个MPM:

[root@mohitm ~]# apachectl -V|grep "Server MPM:"
Server MPM:     prefork
[root@mohitm ~]#

找到httpd配置文件

$ /usr/sbin/apache2 -V | grep SERVER_CONFIG_FILE

-D SERVER_CONFIG_FILE="/etc/apache2/apache2.conf"
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# ServerLimit: maximum value for MaxClients for the lifetime of the server
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves

<IfModule prefork.c>
StartServers      16
MinSpareServers   10
MaxSpareServers   20
ServerLimit      5024
MaxClients       5024
MaxRequestsPerChild     10000
</IfModule>

答案 3 :(得分:0)

Amazon Linux上的Apache主要配置文件:

/etc/httpd/conf/httpd.conf

其他配置加载的文件:

- conf.modules.d/*.conf
- conf.d/*.conf

我找不到部分,然后将其添加到主文件中并解决了我的问题。