Інструмент для кешування php-файлів на сервері для пришвидшення видачі результатів. Файли після компіляції в байт-код зберігаються в оперативній пам’яті сервера, на диск або і там і там.
eAccelerator являє собою звичайний модуль під Апач.
Сайт – http://www.eaccelerator.net/
Скачати скомпільовану бібліотеку для Віндовс можна тут
Етапи встановлення(описано для Windows, під Юнікс-системи все те саме, окрім того, що розширення бібліотеки буде не *.dll, a *.so – її треба буде скомпілювати або десь скачати):
1) скопіювати скачану бібліотеку в папку з розширеннями для РНР (наприклад сюди – usr\local\php5\ext\)
2) відредагувати файл php.ini додавши наступні рядки ПЕРЕД підключенням інших розширень
extension=eaccelerator.dll eaccelerator.shm_size=”16″ ; eaccelerator.cache_dir=/tmp/eaccelerator ;ця папка вже повинна бути створена eaccelerator.enable=”1″ eaccelerator.optimizer=”1″ eaccelerator.check_mtime=”1″ 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″ eaccelerator.keys = “shm_only” ;це означає, що буде використовуватись тільки оперативна пам’ять eaccelerator.sessions = “shm_only” eaccelerator.content = “shm_only” eaccelerator.allowed_admin_path = “X:\home\somesite.com\www\eaccelerator\control.php”
Що означає кожен параметр можна почитати наприклад тут.
3) при бажанні можна скопіювати файл control.php, що йде в поставці eAccelerator, кудись собі на сервер, прописати його розміщення в eaccelerator.allowed_admin_path, задати бажані пароль та логін всередині і переглядати статистику використання eAccelerator прямо в браузері.
4) Не забути перезавантажити Апач
Акселератор стоїть, але як подивитись чи дає його використання хоча б щось? Можна використати утиліту, яка йде в поставці Апача – ab(Apache Benchmark)
Приклад використання:
ab -n 1000 -c 10 -q http://test-site.com/test.php
(буде виконано 1000 запитів, по 10 одночасно)
Буде виведена статистика, серед якої варто виділити:
Time per request: xxxx [ms] (mean) – це число показує, скільки в сумі зайняв весь пакет із 10 одночасних запитів
Time per request: xxxx [ms] (mean, across all concurrent requests) це число показує, скільки часу зайняв один запит.
Інколи виграш від використання такої кеш-системи може сягати всього кількох мілісекунд, або його НАВІТЬ МОЖЕ НЕ БУТИ , але вона все-одно МОЖЕ ДОПОМОГТИ у випадку великого зростання користувачів на сайті – тоді виграш в часі буде значно більшим.
Іншими словами, успішність застосування кеш-системи залежить від багатьох факторів, зокрема від особливості структури сайту і кількості відвідувачів на ньому.