我使用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)
从this doc开始,我需要至少在MPM / prefork中配置相对于可用RAM的MaxRequestWorkers。
在beanstalk中配置此功能的正确方法是什么?我猜它通过.ebextensions?怎么样?
答案 0 :(得分:6)
我正在使用.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