Как я могу перейти с prefork на рабочий MPM на CentOS 64bit?
Я использую CentOS 64 bit, и только что узнал, что я использую prefork MPM на моем двойном четырехъядерном Xeon. Мне сказали, что работник даст мне меньше памяти и увеличит производительность, так как я использую сайт с очень высоким трафиком.
Если это правда, как мне это сделать?
4 ответа
Изменить: /etc/sysconfig/httpd
Раскоментируйте:
HTTPD=/usr/sbin/httpd.worker
Перезагрузите, вуаля!
CentOS 6x:
изменить файл: / etc / sysconfig / httpd
HTTPD=/usr/sbin/httpd.worker
CentOS 7x:
$ cat /etc/httpd/conf.modules.d/00-mpm.conf
#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
LoadModule mpm_worker_module modules/mod_mpm_worker.so
#LoadModule mpm_event_module modules/mod_mpm_event.so
Запустить снова
Отредактировано: /etc/sysconfig/httpd
И без комментариев:
HTTPD=/usr/sbin/httpd.worker
После перезапуска httpd (перезапуск службы httpd) я получаю следующую ошибку:
Stopping httpd: [ OK ]
Starting httpd: httpd.worker: Syntax error on line 222 of /etc/httpd/conf/httpd.conf: Syntax error on line 9 of /etc/httpd/conf.d/php.conf: Cannot load /etc/httpd/modules/libphp5-zts.so into server: /etc/httpd/modules/libphp5-zts.so: cannot open shared object file: No such file or directory
[FAILED]
Возможно, вам придется установить php-zts.
yum install php-zts
После этого больше нет сообщений об ошибках и httpd запускается нормально с активным работником модуля.
- Redhat Enterprise Linux 6
php-zts в RHEL находится в "необязательном" хранилище:
# subscription-manager repos --enable rhel-6-server-optional-rpms
Repository 'rhel-6-server-optional-rpms' is enabled for this system.
# yum install php-zts