EAccelerator + Ubuntu. Установка и Настройка
Что такое EAccelerator?
EAccelerator – это бесплатный opensource продукт, ускоряет выполнение скриптов от 2 до 10 раз
Как работает EAccelerator?
Перед тем как выдать html-содержимое клиенту, php компилирует скрипт в промежуточный байт-код, выполняет его… И так каждый раз.
Нельзя ли как нибудь оптимизировать и сэкономить процессорное время? Конечно можно! И в этом нам поможет EAccelerator! Он берет откомпилированный php-файл, и складывает его во временный каталог. Когда в следующий раз пользователь обращается к php-файлу, он сначала проверит – нет ли уже «готового» файла в кеше, и если есть – напрямую выдает его, экономя драгоценные такты процессора. Например, у меня нагрузка в часы пик упала с 80% до 5-15%.
Вещь однозначно из разряда must-have, я считаю что его вообще было бы здорово включить в базовую поставку PHP.
Ладно, не будем отвлекаться – а переходим сразу к практике – к установке.
Установка EAccelerator
Скачиваем последнюю версию и распаковываем
wget http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6.tar.bz2
tar xjvf eaccelerator-0.9.6.tar.bz2
Далее командуем
cd eaccelerator-0.9.6
sudo phpize
Если будет ругаться что-то вроде:
phpize not found
то устанавливаем пакет:
sudo apt-get install php5-dev
и повторяем предыдущий шаг.
ОК. phpize успешно отработал.
Командуем в консоли:
./configure --enable-eaccelerator=shared
Далее:
make && make install
Он нам выплюнет строчку наподобие
Installing shared extensions: /usr/lib/php5/20060613/
Это каталог, где разместился наш турбо-ускоритель. Если у тебя эта строчка отличается (например ты скачал более свежую версию EAccelerator, то не забудь заменить ее в конфиге, который будет приведен ниже)
ОК. Самое время приступать к конфигурации нашего зверя.
Настройка EAccelerator
Переходим в каталог конфигов PHP:
cd /etc/php5/conf.d/
И создаем дополнительный конфиг для нашего EAccelerator (имя файла ты можешь поменять по своему вкусу, но расширение .ini не трогай ![]()
sudo nano eaccelerator.ini
Итак, открыли наш любимый Nano.
Быстренько набрасываем туда следующие строчки:
zend_extension = "/usr/lib/php5/20060613/eaccelerator.so" eaccelerator.shm_size = "16" eaccelerator.cache_dir = "/var/cache/eaccelerator" eaccelerator.enable = "1" eaccelerator.optimizer = "1" eaccelerator.check_mtime = "1" eaccelerator.debug = "0" eaccelerator.filter = "" eaccelerator.shm_max = "0" eaccelerator.shm_ttl = "0" eaccelerator.shm_prune_period = "0" eaccelerator.shm_only = "0" eaccelerator.compress = "1" eaccelerator.compress_level = "7" eaccelerator.allowed_admin_path = "/var/www/eaccelerator"
И сохраняем.
ОК. Почти все готово, остались мелочи.
Создадим каталог под кеш, дадим разрешение на запись в него www-демону, а всех остальных пользователей отправим в пешее эротическое путешествие (незачем им в этот каталог совать свой нос).
sudo mkdir /var/cache/eaccelerator sudo chown root:www-data /var/cache/eaccelerator sudo chmod g=rwx,o= /var/cache/eaccelerator
Отлично. Перезапускаем индейца:
sudo /etc/init.d/apache2 restart
Трижды стукаем в бубен, скрещиваем пальцы, и печатаем:
php -v
Если вывалилось нечто подобное:
PHP 5.2.6-1+lenny9 with Suhosin-Patch 0.9.6.2 (cli) (built: Aug 4 2010 06:06:53)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
with eAccelerator v0.9.6, Copyright (c) 2004-2010 eAccelerator, by eAccelerator
Значит установка завершилась успешно.
Но для пущей уверенности проверим еще и так:
Создадим любой php-файл с кодом:
<?php
phpinfo();
?>
Запустим его, и сделаем поиск по строке eaccelerator. Если поиск успешен – значит все ОК.
Ну вот и все. Теперь с помощью EAccelerator мы можем наслаждаться повышенными скоростями выполнения php-скриптов.
Желаю тебе творческих успехов, и хорошего дня

Комментарии ()
Вы должны авторизоваться, чтобы оставлять комментарии.