Установка eaccelerator на чистый деб, на котором есть только nginx+php-fpm, mysql, Sphinx
Делать было нечего поставил eAccelerator, ну и решил написать инструкцию как его ставить на деб с nginx+php-fpm
eAccelerator
Бесплатный свободный PHP акселератор, оптимизатор, и динамический кэш. Он увеличивает производительность PHP скриптов, кешируя их в их скомпилированном виде. Также оптимизация увеличивает скорость работы скриптов. eAccelerator обычно уменшает нагрузку на сервер и увеличивает скорость PHP кода в 1-10 раз.
]
берем ссылку с sourceforge.net/projects/eaccelerator/files/eaccelerator/
wget ссылка
tar xvfj eaccelerator-0.9.6.1.tar.bz2
cd eaccelerator-0.9.6.1
phpize
./configure
make
make test (смотрим на совместимость с этой версией пхп у меня были проблемы. Обновил apt-get install make, обновил репозитории apt-get update. обновил php и т.д. и пересобрал до совместимости)
make install
sudo vi /etc/php5/fpm/conf.d/eaccelerator.ini
вставляем
extension=«eaccelerator.so»
рубутим
но сначала набираем
Если ошибок нет:
После чего убеждаемся что все работает открываем phpinfo и смотрим блок
eAccelerator
должно быть типо:
если будет:
Если блока не будет вообще значит косяк скорее всего в конфиге.
eAccelerator
Бесплатный свободный PHP акселератор, оптимизатор, и динамический кэш. Он увеличивает производительность PHP скриптов, кешируя их в их скомпилированном виде. Также оптимизация увеличивает скорость работы скриптов. eAccelerator обычно уменшает нагрузку на сервер и увеличивает скорость PHP кода в 1-10 раз.
]
apt-get install build-essential php5-dev php-apc
/etc/init.d/php5-fpm restart
берем ссылку с sourceforge.net/projects/eaccelerator/files/eaccelerator/
wget ссылка
tar xvfj eaccelerator-0.9.6.1.tar.bz2
cd eaccelerator-0.9.6.1
phpize
./configure
make
make test (смотрим на совместимость с этой версией пхп у меня были проблемы. Обновил apt-get install make, обновил репозитории apt-get update. обновил php и т.д. и пересобрал до совместимости)
make install
sudo vi /etc/php5/fpm/conf.d/eaccelerator.ini
вставляем
extension=«eaccelerator.so»
; Максимальный размер кеша в мегабайтах (ставьте адекватное для вашего VDS число)
eaccelerator.shm_size="512"
; Корневой каталог для хранения кеша
eaccelerator.cache_dir="/var/cache/eaccelerator"
eaccelerator.enable="1"
; Подключить или отключить встроенный оптимайзер
; которые увеличивает скорость выполнения кода
eaccelerator.optimizer="1"
; Включаем проверку модификации PHP файлов. Поставьте
; "1" если требуется, чтобы проверялись все модифицированные
; файлы и перекомпиливались заново.
eaccelerator.check_mtime="1"
; Режим отладки. Если поставить 1 или вообще
; забыть упомянуть этот параметр, при большой
; посещаемости загадит логи Apache за считанные часы.
eaccelerator.debug="0"
; Здесь можно определить можно определить, какие
; файлы должны быть кешированы. По-умолчанию если
; здесь ничего не указано, то кешируются все файлы.
; Для расширенного использования прочитайте документацию.
eaccelerator.filter=""
; Максимально допустимое значение которое может быть
; отправлено в разделяемую память. По-умолчанию,
; "ноль" - без ограничений. Размер указывается в байтах,
; но можно указать приставки, например: 10240, 10K, 1M.
eaccelerator.shm_max="0"
; Когда акселлератору потребуется отправить в разделяемую
; память какой-то объект и при этом в памяти для этого
; не окажется места, он попытается удалить файлы, которые
; не были запрошены в течении последних "shm_ttl" секунд.
; По-умолчанию, это значение равно "0" - не удалять ничего.
eaccelerator.shm_ttl="0"
; Когда акселлератору потребуется отправить в разделяемую
; память какой-то объект и при этом в памяти для этого
; не окажется места, он попытается удалить старые скрипты,
; если предыдущие такие попытки были не больше, чем
; "shm_prune_period" секунд назад.По-умолчанию, это значение
; равно "0" - не удалять ничего.
eaccelerator.shm_prune_period="0"
; Включить или отключить кеширование скомпиленных скриптов
; _только_ на диск. Этот параметр не влияет на данные сессий
; и кеширование контента. По-умолчанию, значение 0, что означает
; что данные будут кешироваться и в памяти и на диске.
eaccelerator.shm_only="0"
; Включить или отключить сжатие закешированного контента.
; По-умолчанию, "1" - сжимать.
eaccelerator.compress="1"
; Уровень сжатия. По-умолчанию, "9" - максимум.
eaccelerator.compress_level="9"
sudo mkdir -p /var/cache/eaccelerator
sudo chmod 0777 /var/cache/eaccelerator
рубутим
но сначала набираем
php5-fpm -v
и смотрим возможные ошибки. Есть вероятность что после сборки будут подключены некоторые модули 2а раза в php.ini и в /ect/php5/conf.d/*.ini или чего то будет не хватать.Если ошибок нет:
/etc/init.d/php5-fpm restart
">После чего убеждаемся что все работает открываем phpinfo и смотрим блок
eAccelerator
должно быть типо:
Version 0.9.6.1
Caching Enabled true
Optimizer Enabled true
Check mtime Enabled true
Memory Size 33,554,360 Bytes
Memory Available 7,699,784 Bytes
Memory Allocated 25,854,576 Bytes
Cached Scripts 538
Removed Scripts 0
Directive Local Value Master Value
eaccelerator.allowed_admin_path no value no value
eaccelerator.cache_dir /var/cache/eaccelerator /var/cache/eaccelerator
eaccelerator.check_mtime 1 1
eaccelerator.debug 0 0
eaccelerator.enable 1 1
eaccelerator.filter no value no value
eaccelerator.log_file no value no value
eaccelerator.optimizer 1 1
eaccelerator.shm_max 0- аПаО баМаОаЛбаАаНаИб 0 0- аПаО баМаОаЛбаАаНаИб 0
eaccelerator.shm_only 0 0
eaccelerator.shm_prune_period 0 0
eaccelerator.shm_size 32 32
eaccelerator.shm_ttl 00- аПаО баМаОаЛбаАаНаИб 0 00- аПаО баМаОаЛбаАаНаИб 0
если будет:
Caching Enabled false
Optimizer Enabled false
Check mtime Enabled false
значит скорее всего где то косяк в сборке бинарников совместимости или конфиге. Если блока не будет вообще значит косяк скорее всего в конфиге.
3 комментария
С другой стороны у меня на работе на хостинг серверах eac стоит по дефолту на всех, и он не так уж и часто падает, так что нестабильность понятие относительное.