Акселератор PHP

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Акселератор PHP — расширение для PHP, основное назначение которого - увеличение производительности интерпретатора при обработке сценариев путем кэширования их байт-кода.

Принцип работы[править | править исходный текст]

Как выглядит обработка сценария на PHP обычным интерпретатором:

  1. Чтение файла
  2. Генерация байткода
  3. Выполнение кода
  4. Выдача результата

При этом процесс генерации байткода выполняется каждый раз и отнимает большую часть времени обработки сценария.

Для обхода этого узкого места были разработаны акселераторы PHP — модули, кэширующие скомпилированный байт-код в памяти и/или на диске и в разы увеличивающие производительность PHP.

Существующие решения[править | править исходный текст]

Alternative PHP Cache[править | править исходный текст]

The Alternative PHP Cache — бесплатный и открытый opcode кэшер для PHP. Он был задуман, как бесплатный, открытый и стабильный фреймворк для кэширования и оптимизации исходного кода PHP, так же возможно кэширование пользовательских данных.

Проект[1] живет и развивается. Поддерживает PHP4 и PHP5, включая 5.3 и 5.4.

Это расширение PECL[2] (см. "Установка расширений PECL"[3]) не поставляется вместе с PHP[4].

Используется на серверах Википедии.

Последняя версия: 3.1.13 (от 2012-09-03)[5]

eAccelerator[править | править исходный текст]

eAccelerator — это свободный открытый проект, выполняющий роли акселератора, оптимизатора и распаковщика. Также встроены функции динамического кэширования контента. Есть возможность оптимизации PHP-скриптов для ускорения их исполнения.

Поддерживает PHP4 и PHP5, включая 5.3.

Последняя версия: 0.9.6.1 от 31 мая 2010.

Начиная с июля 2012 проектом занимается Hans Rackers, в master-ветке репозитория на GitHub включена поддержка для PHP 5.4

PhpExpress[править | править исходный текст]

Проприетарный проект. PhpExpress является бесплатным ускорителем обработки php-скриптов на веб-сервере. PhpExpress также обеспечивает поддержку загрузки файлов закодированных через Nu-Coder. Модуль прост в установке и использовании, при этом PhpExpress обеспечивает значительное увеличение скорости выполнения скриптов PHP. Файлы компилируются в байт-код и кэшируются в оперативной памяти сервера. Распространяется программа бесплатно и без ограничений.

Последняя версия: 3.0 от 2010. Поддерживает PHP4 и PHP5, включая 5.3

XCache[править | править исходный текст]

Поддерживает функции оптимизации скриптов, кэширования байткода в оперативную память, кэширования пользовательских данных в shared memory, простого профилирования работы скриптов. Имеет собственный GUI, наличие и использование которого, однако, не обязательно для функционирования пакета. Бесплатен. Последняя стабильная версия: 3.1.0 от 10.10.2013

Проект[6] живет и развивается. Поддерживает PHP4 и PHP5, включая 5.5.

Начиная с версии 2.0.0 ( release candidate от 2012-04-05) включена поддержка PHP 5.4.

Windows Cache Extension for PHP[править | править исходный текст]

PHP-акселератор[7] для Internet Information Server от Microsoft (BSD License[8]). На 09.06.2013 для скачивания предлагалась версия 1.3 для 32-битной версии PHP. Есть версии Windows Cache Extension для PHP версий 5.2, 5.3 и 5.4. Windows Cache Extension кэширует php-файлы, php-байткод и имеет конфигурируемый пользовательский кэш. Расширение имеет PHP-API для контроля и наблюдения за состоянием кэша. Распространяется программа бесплатно.

Zend OPcache[править | править исходный текст]

Zend OPcache [9] обеспечивает более быстрое выполнение PHP кода операции через кэширование и оптимизации. Он улучшает PHP производительность, сохраняя скомпилированные сценариев байт-кода в разделяемой памяти. Zend OPcache включен в PHP 5.5 по умолчанию.

См. также[править | править исходный текст]

Примечания[править | править исходный текст]

Ссылки[править | править исходный текст]