Ежемесячные архивы: Ноябрь 2008

Оптимизация web-сервера: eAccelerator

продолжаю облегчать жизнь серверу.
eAccelerator – все мы знаем что при обращении к файлу пхп вэб сервер компилирует пхп файл в некую программу, которая в дальнейшем, что-то делает и выдаёт нам результат в виде html, ну и кто-то задумался(может отбукился :) ): «а зачем постоянно делать одну и туже работу – компилировать при каждом обращении один и тот же файл», и вот eAccelerator берёт откомпилированный php файл и складывает во временную папку и когда пользователь обращается к очередному пхп файлу в дело вступает eAccelerator, который проверяет есть ли уже «готовый» запрашиваемый файл, если находит готовый то сразу запускает его, тем самым облегчает жизнь серверу (значительно снижает нагрузку на процессор) например у меня нагрузка в часы пик с 70% упала до 7-25%

ставим php5-dev

apt-get install php5-dev

берём свежий дистрибутив с http://eaccelerator.net/
распаковываем, заходим в извлечённый каталог

phpize

./configure –enable-eaccelerator=shared

make

make install

cd /etc/php5/conf.d

Создаём конфигурационный файл для акселератора

touch eacclerator.ini

вставляем в него содержимое

zend_extension = «/usr/lib/php5/20060613+lfs/eaccelerator.so»
eaccelerator.shm_size = «0″
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/»

создаю каталог для кэша

mkdir /var/cache/eaccelerator

chmod 777 /var/cache/eaccelerator

теперь можно перезапустить apache

для контроля над тех процессом есть файл control.php
в нём находим логин пароль и перекидываем в нужную нам папку на территории вэб сервера ну и заходим :)

Iptables SNAT

iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to 1.2.3.4

eth1 – внешний интерфейс сервера
1.2.3.4 – внешний ИП сервера