Акселератор PHP — расширение для PHP, основное назначение которого является увеличение производительности интерпретатора при обработке сценариев путем кэширования их байт-кода.
Если перефразировать, интерпретатору PHP каждый раз не надо будет производить чтения скриптов и компиляцию байт-кода, а сразу будет приступать к выполнению сценария, что сильно уменьшает время генерации страниц.
Если у нас чистая установка eAccelerator в системе, то необходимо установить компоненты разработчика из репозиториев:
1 2 | yum install php-devel yum groupinstall 'Development Tools' |
Вторым шагом, скачиваем сам eAccelerator, последней версии из репозитория
1 2 | cd /tmp wget https://github.com/eaccelerator/eaccelerator/tarball/master |
1 | tar xvf master |
Самый простой способ:
cd ea
далее жмем клавишу tab, имя подставиться автоматически.Далее, собираем и компилируем eAccelerator под нашу версию PHP, следующими командами:
1 2 3 4 | phpize ./configure --enable-shared --with-php-config=/usr/bin/php-config make make install |
После чего создаем файл конфигурации:
1 | nano /etc/php.d/eaccelerator.ini |
Со следующим текстом:
1 2 3 4 5 6 7 8 9 10 11 | extension="eaccelerator.so" eaccelerator.shm_size="16" eaccelerator.cache_dir="/tmp/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" |
Так же создаем папку, где у нас будет храниться кеш и назначаем на нее права
1 2 | mkdir /tmp/eaccelerator chmod 0777 /tmp/eaccelerator |
Производим перезапуск веб сервера командой
1 | service httpd restart |
Если все прошло нормально, проверяем установился ли нормально eAccelerator
1 | php -v |
Если все нормально, должно вывестись примерно следующее:
1 2 3 4 | PHP 5.4.20 (cli) (built: Sep 18 2013 19:55:33) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies with eAccelerator v1.0-dev, Copyright (c) 2004-2012 eAccelerator, by eAccelerator |
После обновления PHP eAccelerator перестает работать, его необходимо собрать под актуальную версию PHP.
Лично я рекомендую удалять папку с уже собранной версией (во временной папке) что бы избежать ошибок.
По этому делаем следующее:
1 2 3 | cd /tmp rm -f master rm -fr eaccelerator-eaccelerator-42067ac |
После того как мы удалили все следы, выполняем все с пункта два.