eAccelerator — это свободно-распространяемый PHP акселератор, оптимайзер и средство для кеширования динамического контента. Он увеличивает производительность PHP скриптов за счет их кеширования в скомпилированном состоянии, тем самым предотвращая их постоянную перекомпиляцию. В результате оптимизации скриптов происходит увеличение скорости их выполнения.
eAccelerator обычно уменьшает нагрузку на сервер и увеличивает скорость исполнения PHP кода в 1-10 раз.
Установка
Воспользуемся установкой через систему портов. Желательно порты обновить через portsnap!
Поехали:
cd /usr/ports/www/eaccelerator make install clean
Настройка
Создадим директорию для кеша:
mkdir /tmp/eaccelerator chmod 775 /tmp/eaccelerator
Создадим файл для лога:
touch /var/log/eaccelerator_log chmod 775 /var/log/eaccelerator_log
Отредактируем файл php.ini
ee /usr/local/etc/php.ini
Добавим следующее содержимое:
[eAccelerator] ; Подключаем модуль extension="eaccelerator.so" ; Размер кеша, в МБ eaccelerator.shm_size="16" ; Путь до каталога файлов кеша eaccelerator.cache_dir="/tmp/eaccelerator" ; Переключатель модуля (1 - вкл и 0 - выкл) eaccelerator.enable="1" ; Переключатель оптимизатора (1 - вкл и 0 - выкл) eaccelerator.optimizer="1" ; Добавляет отладочную информацию в лог (1 - вкл и 0 - выкл) eaccelerator.debug="0" ; Путь до файла лога eaccelerator.log_file = "/var/log/eaccelerator_log" ; Проверять время модификации файлов кеша для перекомпиляции оных (1 - вкл и 0 - выкл) eaccelerator.check_mtime="1" ; Фильтр расширений файлов которых надо кешировать. Например, "*.php *.phtml". eaccelerator.filter="" ; Размер выделяемой памяти, в байтах. Допустимо вводить в формате 10240, 10K, 1M и т.д. При 0 - безлимит eaccelerator.shm_max="0" ; Время жизни кеша, сек eaccelerator.shm_ttl="120" ; Период удаления старых данных из памяти, сек (при 0 не удаляет) eaccelerator.shm_prune_period="0" ; Использовать для кеша только память. При 0 используется диск и память eaccelerator.shm_only="0" ; Переключатель компресии (1 - вкл и 0 - выкл) eaccelerator.compress="1" ; Степень сжатия eaccelerator.compress_level="9"
Ребутнём индейца:
apachectl restart
ВНИМАНИЕ!!!
Если вы установили себе на сервер eAccelerator, то не пытайтесь поставить еще и pecl-APC, они конфликтуют между собой!