HostCMS
Выдана 60 341 лицензия.
На главную страницу Карта сайта

eAccelerator

eAccelerator является PHP-акселератором, основное назначение которого состоит в кэшировании бинарного представления кода. Каждый раз при выполнении скрипта, PHP читает все подключаемые файлы и переводит их в бинарный код, при запросе скрипта операция повторяется. Задача eAccelerator состоит в сохранении бинарного кода для повторного использования, уменьшая время выполнения скрипта.

Внимание! eAccelerator работает с PHP в режиме fastcgi или mod_php.

Внимание! С версии 0.9.6-rc1 удалена поддержка пользовательских функций кэширования (The user cache function are removed ), используйте версию 0.9.5.3!

Установка eAccelerator

Переходим в /usr/local:

# cd /usr/local

Создаем директорию eAccelerator:

# mkdir eAccelerator

Переходим в директорию eAccelerator:

# cd eAccelerator

Загрузим дистрибутив с сайта производителя (информацию о последних релизах можно найти по адресу http://www.eaccelerator.net/):

# wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2

Распаковываем:

# tar -xvjf ./eaccelerator-0.9.5.3.tar.bz2 

Переходим в директорию eaccelerator-0.9.5.3:

# cd eaccelerator-0.9.5.3

Собираем eAccelerator:

# export PHP_PREFIX="/usr/local"
или
# export PHP_PREFIX="/usr"

(в зависимости от того, где расположени phpize).

# $PHP_PREFIX/bin/phpize
# ./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config --with-eaccelerator-shared-memory

Опция --with-eaccelerator-shared-memory необходима для возможности использования API eAccelerator. Полный список опций.

# make

Инсталлируем eAccelerator:

# make install

Настройка eAccelerator

Конфигурацию eAccelerator можно разместить в виде файла eaccelerator.ini в директории /etc/php.d/ или указать в файле /etc/php.ini

Разместим в файле /etc/php.ini в самом конце перед секцией [Zend]:

eaccelerator.shm_size="512"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="3600"
eaccelerator.shm_prune_period="1800"
eaccelerator.shm_only="1"
eaccelerator.compress="1"
eaccelerator.compress_level="3"
eaccelerator.keys="shm_only"
eaccelerator.sessions="shm_only"
eaccelerator.content="shm"

Внимание! При наличии в php.ini директивы extension_dir путь к расширению указываем относительный:

extension="eaccelerator.so"

Создадим директорию для файлов eAccelerator:

# mkdir /tmp/eaccelerator

Установим права:

# chmod 777 /tmp/eaccelerator

Перезапустим Apache:

# service httpd restart

Установка для Windows

Загрузите бинарные файлы для установленной версии PHP 5.

В директорию диск:\{путь к PHP}\ext\ разместите загруженную dll, предварительно переименовав ее в eaccelerator.dll, создайте директорию для файлов eAccelerator, например, по адресу c:\tmp\eaccelerator.

В php.ini добавьте строку extension="eaccelerator.dll" и разместите конфигурацию eAccelerator, например:

eaccelerator.shm_size="256"
eaccelerator.cache_dir="c:\tmp\eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="3600"
eaccelerator.shm_prune_period="1800"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="3"
# Раскомментировать при необходимости сохранения кэша только в памяти
#eaccelerator.keys = "shm_only"
#eaccelerator.sessions = "shm_only"
#eaccelerator.content = "shm_only"

Перезапустите службу Apache.

Возможные проблемы

Отсутствует phpize

Необходимо установить php-devel, выполним:

# yum install php-devel

Отсутствует gcc и make

Необходимо установить gcc и make, выполним:

# yum install gcc
# yum install make

Принудительная очистка файлового кэша

С целью недопущения исчерпания дискового пространства под устаревшие кэши eAccelerator рекомендуем очищать файлы, созданные более 12 часов назад:

/usr/sbin/tmpwatch --mtime --all 12 /tmp/eaccelerator

Описание основных атрибутов конфигурации eAccelerator

eaccelerator.shm_size Размер кэша совместно используемой памяти, устанавливается в мегабайтах.
eaccelerator.cache_dir Директория для дискового кэша. eAccelerator сохраняет в указанной директории бинарное представление кода, сессии и другие данные.
eaccelerator.enable С помощью этой опции можно отключать и включать eAccelerator. Значение 1 - включено, 0 - выключено.
eaccelerator.shm_ttl Указывает в секундах время, по истечении которого давно не используемый код должен быть удален из совместно используемой памяти при превышении объема выделяемой памяти.
По умолчанию эта опция отключена, мы рекомендуем устанавливать значение  от 60 до 300 при большом количестве файлов и от 900 до 1800 при малом количестве файлов.
eaccelerator.shm_prune_period Когда eAccelerator не имеет достаточно свободного памяти, он пытается удалить старые данные, если предыдущая попытка была сделана более "shm_prune_period" секунд назад. По умолчанию значение "0", при котором eAccelerator не будет пытаться удалить старый данные из памяти.
eaccelerator.keys
eaccelerator.session
eaccelerator.content
Параметры указывают доступные способы сохранения кэша eAccelerator.
Возможные значения:
  • shm_and_disk — кэш данных в общей памяти и на диске (по умолчанию);
  • shm — кэш данных в общей памяти или на диске, если общая память или размер данных больше, чем "eaccelerator.shm_max";
  • shm_only — кэш данных в общей памяти;
  • disk_only — кэш данных на диске;
  • none не кэшироваь данные.

О нас говорят!

Студия «АртЛиберти» подтверждает, HostCMS — лидер на рынке систем управления сайтом.

Никита Сергеевич
Руководитель отдела разработки
Студия «АртЛиберти»

Акции партнеров

Обработка прайс-листов поставщиков

Скидка 10% на программы обработки прайс-листов при покупке HostCMS в ElbuzGroup.

Скидка 10% при покупке программы для автоматизации обработки
прайс-листов поставщиков E-Trade PriceList Importer редакции Professional, при покупке любой редакции HostCMS в компании ElbuzGroup.

Рекомендуем хостинг

SPRINTHOST.RU

Тариф «HostCMS.Mini» за 70 руб./мес., Тариф «HostCMS» за 250 руб./мес.

Создаете сайты?

У нас есть партнерское предложение по поставке системы управления сайтом:

О HostCMS
Редакции HostCMS
Возможности
Поддержка
Области применения
Партнерская программа
Заказать сайт