在 Beanstalk 中为 php/symfony 站点配置 apache MPM


Configure apache MPM in Beanstalk for a php/symfony site

我正在使用 AWS beanstalk 来托管一个 php/symphony 应用程序。我想正确配置有关机器大小的 apache,目前为 t2.small,即。1 核,2 GB RAM,非常小。

apachectl -V 给了我这个:

Server version: Apache/2.4.16 (Amazon)
Server built:   Aug 13 2015 23:52:13
Server's Module Magic Number: 20120211:47
Server loaded:  APR 1.5.0, APR-UTIL 1.4.1
Compiled using: APR 1.5.0, APR-UTIL 1.4.1
Architecture:   64-bit
Server MPM:     prefork
  threaded:     no
  forked:     yes (variable process count)

从这个文档中,我至少需要在MPM/prefork中配置MaxRequestWorkers,与可用的RAM相关。

在豆茎中配置它的正确方法是什么?我想是通过 .ebextensions ?如何?

我正在使用.ebextensions

这是我.ebextensions/apache.config设置的一部分,请根据您的实例容量和项目需求进行调整

files:
  "/etc/httpd/conf.modules.d/00-mpm.conf":
      mode: "000644"
      owner: root
      group: root
      content: |
        LoadModule mpm_worker_module modules/mod_mpm_worker.so
        ServerLimit         512
        StartServers        100
        MaxRequestWorkers   256
        MinSpareThreads     100
        MaxSpareThreads     300
        ThreadsPerChild     25

这是我.ebextensions/php.config优化/设置的一部分,请根据您的实例容量进行调整

files:
  "/etc/php.d/52-fscache.ini":
      mode: "000755"
      owner: root
      group: root
      content: |
        [PHP]
        realpath_cache_size = 128M
        realpath_cache_ttl = 120
  "/etc/php-5.6.d/10-opcache.ini":
      mode: "00644"
      content: |
        zend_extension=opcache.so
        opcache.enable=1
        opcache.memory_consumption=256
        opcache.interned_strings_buffer=32
        opcache.max_accelerated_files=100000
        ;opcache.max_wasted_percentage=5
        opcache.use_cwd=0
        opcache.revalidate_freq=0
        opcache.revalidate_path=0
        opcache.blacklist_filename=/etc/php-5.6.d/opcache*.blacklist
        opcache.consistency_checks=0

  "/etc/php.d/51-upload.ini":
      mode: "000644"
      content: |
        post_max_size = 100M
        upload_max_filesize = 10M
  "/etc/php-fpm-5.6.d/www.conf":
      mode: "000644"
      content: |
        [www]
        user = webapp
        group = webapp
        listen = 127.0.0.1:9000
        listen.allowed_clients = 127.0.0.1
        ;process.priority = -15
        pm = static
        pm.max_children = 30
        pm.max_requests = 500
        php_admin_value[error_log] = /var/log/php-fpm/5.6/www-error.log