Акселераторы PHP
Материал из 1GbWiki.
Содержание |
[править] Общие сведения
На UNIX-серверах хостинга* 1Gb.ru предустановлены (либо могут быть установлены по заявке) следующие акселераторы PHP
- eAccelerator
- APC
- Zend Optimizer+ - (не путать с Zend Optimizer)
Включение акселератора может давать ускорение времени генерации страницы сайта, но не снижает процессорное время потребляемое скриптами. В виду того, что данные ускорители могут давать и отрицательный эффект, например, за счет своих собственных ошибок, ошибок в самом PHP, а также в силу особенностей работы с разделямой памятью на виртуальном хостинге, данные модули по умолчанию выключены.
Примечание:
* только на UNIX/Apache/FastCGI или UNIX/Apache/mod_php работающий в режиме HTTP службы;
[править] Как включить
1. Для включения любого из перечисленных акселератора вам нужно в разделе кабинета /Полный список функций/ -> [Сайты] -> /Управление сайтами и серверами/ перевести сайт на UNIX/Apache/FastCGI
.
2. Зайти по SSH на сервер и скопировать в домашний каталог php.ini, соответствующий той версии PHP, которая используется для сайта:
$ cp -v /opt/hostpublic/etc/php$(awk '/exec/ {system ($2" -v | head -n 1 | grep -o \"5\\.[[:digit:]]\\+\"")}' ~/.fast-php/fast-php)_aux1/php.ini ~/.php/
[править] eAccelerator
В файле ~/.php/php.ini надо раскомментировать строку:
;extension="eaccelerator.so"
В общем виде настройки для последней версии eAccelerator могу выглядить так:
[eAccelerator] extension="eaccelerator.so" eaccelerator.enable = "1" eaccelerator.cache_dir = "/tmp/.eacc" eaccelerator.shm_size = "128" eaccelerator.shm_ttl = "1800" eaccelerator.shm_prune_period = "900" eaccelerator.shm_only = "0" eaccelerator.optimizer = "1" eaccelerator.debug = 0 eaccelerator.log_file = "" eaccelerator.name_space = "" eaccelerator.check_mtime = "1" eaccelerator.filter = "" eaccelerator.allowed_admin_path = ""
[править] APC
В файле ~/.php/php.ini надо раскомментировать строку:
;extension=apc.so
Минимально необходимые настройки для APC:
[APC] extension=apc.so apc.enabled=1 apc.shm_size=128M apc.ttl=1800 apc.user_ttl=1800 apc.max_file_size=4M
Остальные параметры модуля можно посмотреть через вывод функции phpinfo() .
[править] Zend Optimizer+
В файле ~/.php/php.ini надо раскомментировать строку:
;zend_extension="/opt/php.../ZendOptimizerPlus.so"
Настройки по умолчанию:
zend_optimizerplus.enable=1 zend_optimizerplus.memory_consumption=128 zend_optimizerplus.interned_strings_buffer=8 zend_optimizerplus.max_accelerated_files=4000 zend_optimizerplus.revalidate_freq=60 zend_optimizerplus.fast_shutdown=1 zend_optimizerplus.enable_cli=0
Остальные параметры модуля можно посмотреть через вывод функции phpinfo() .
[править] Перезапуск PHP
Чтобы сделанные изменения в php.ini вступили в силу, нужно выполнить команду:
$ killall -9 php php-cgi
[править] См. также
[править] Ссылки
- eAccelerator project. (англ.) - документация по eAccelerator на сайте разработчиков.
- Pecl APC (англ.) - официальная страница проекта APC.
- Zend Optimizer+ (англ.) - страница Zend Optimizer+ на github.