Alternative PHP Caching – это свободный кэшер PHP скриптов. Он позволяет ускорить работу PHP скриптов, приблизительно на 40%. Каким образом это достигается? Предположим, что у нас не установлен пакет Alternative PHP Caching (далее APC). Вы посылаете запрос к PHP скрипту (файлу). Сначала, он должен загрузиться, потом скомпилироваться, далее выполнится код, а потом вывод результата на дисплей. APC кэшер, позволяет сделать это в два этапа. Он кеширует уже скомпилированный PHP код в памяти веб-сервера. При обращении к кэшированному коду, идет его выполнение и вывод результата. Если скрипт модифицировался, то он перекомпилируется заново и кэшируется обратно. То-есть, все намного проще. Зачем одну и ту же работу, делать серверу много раз. Отсюда и бывают задержки и торможения при загрузке сайта. Но это легко поправить установив APC на ваш сервер.
Данное расширение, не единственное в своем роде. Также имеются и конкурирующие аналоги, например xPath. Но APC, уникален своей надежностью. Он один из лучших акселераторов PHP кода. И если вы думаете ставить кэшер на свой сервер, то искренне советую ставить APC.
Сейчас APC находится на стадии своего развития. На данный момент поддерживает PHP 4 и PHP 5, включая 5.3. Предположительно будет включен в стандартное ядро PHP шестой версии.
Производительность APC
Для проверки была выбрана CMS Joomla1.5.9 с демонстрационным набором данных после установки и с шаблоном дизайна по умолчанию. При тестировании производительности при помощи утилиты ab2 (было выполнено 1000 обращений к главной странице сайта в 5 потоков) скорость генерации страниц увеличилась на 40%. Данный показатель вполне существенный для сайтов с большим числом ежедневного трафика.
Недостатки APC
Для того, чтобы наш обзор акселератора был более объективен, мы рассмотрим и недостатки APC.
отсутствует поддержка FastCGI
кеширование работает только с модулем apache mod_php (в режиме cli ускорения не будет)
работает с версиями PHP<=5.2 С версией 5.3 отмечаются проблемы, а что касается 6.0 – будущее совсем туманно. Возможно, какой-то механизм кеширования будет интегрирован в само ядро.
Заключение
По-моему, стоит установить APC на своем веб-сервере и попробовать – подойдет ли оно именно вам. Несмотря на ряд описанных выше ограничений APC считается наиболее надежным из тройки основных реализаций кеширования для языка PHP.