eAccelerator + Apache2 + Debian Lenny 5.0
eAccelerator jest bardzo przydatnym rozszerzeniem PHP. Dzięki temu dodatkowi możemy przyspieszyć działanie PHP. eAccelerator daje możliwość dynamicznego zarządzania pamięcią podręczną. Co Nam to daje? Po zainstalowaniu eAccelerator optymalizuje skompilowany kod bajtowy i zapisuje go do pamięci oraz dodatkowo do pamięci współdzielonej lub na dysk. Każde następne wywołanie danego skryptu powoduje natychmiastowe udostępnienie go przez akcelerator w gotowej, skompilowanej postaci, co pozwala uniknąć strat czasu na ponowną analizę i kompilację. Według ocen autora programu program przyśpiesza wykonywanie skryptów do 10 razy.
Najpierw zaczniemy od instalacji niezbędnych pakietów do przeprowadzenia kompilacji:
apt-get install build-essential php5-dev
Z tej strony pobieramy źródła eAcceleratora: http://www.eaccelerator.net/
cd /tmp
wget http://bart.eaccelerator.net/source/0.9.6.1/eaccelerator-0.9.6.1.tar.bz2
tar xvfj eaccelerator-0.9.6.1.tar.bz2
cd eaccelerator-0.9.6.1
phpize
./configure
make
make install
Po wykonaniu powyższych czynności eAccelerator został zainstalowany w naszym systemie. Teraz należy dodać obsługę eAcceleratora do PHP.
W przypadku debiana odszukujemy ścieżkę:
/etc/php5/apache/conf.d
a następnie tworzymy plik: eaccelerator.ini a w nim wpisujemy:
extension="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="9"
Pełny opis funkcji jest dostępny na stronie projektu: http://www.eaccelerator.net/wiki/Settings
Należy jeszcze dodać odpowiednie uprawnienia do /var/cache/eaccelerator
mkdir -p /var/cache/eaccelerator
chmod 0777 /var/cache/eaccelerator
Na koniec restartujemy apache:
/etc/init.d/apache2 restart
Teraz wystarczy otworzyć plik phpinfo i sprawdzić czy jest włączona obsługa eAcceleratora.
To wszystko 🙂