AddThis Smart Layers

суббота, 16 марта 2013 г.

Настройка Zend Optimizer Plus

Пока семья в Израиле нежится на море, а я сижу в полузамороженной Праге и на улицу как-то совсем не хочется выползать, почему бы приятно не провести время в субботу ковыряясь в настройках сервера :-)

Создал VPS для тестов и начал конфигурировать, чтобы провести серию тестов, о которых писал вчера.

Опущу всякие подробности про компиляцию Nginx, MySQL и прочих важных и не очень сервисов.
Сейчас же речь пойдет о том, что я решил установить PHP 5.4.x


Установить то установил. Самое интересное началось уже потом.
Обнаружилось, что APC версии 3.1.3 (текущая стабильная версия на сегодняшний день) как бы не совсем совместима с этой веткой PHP.
При этом, когда я устанавливал ее через PECL, никто не ругался и тестовая страница открылась без проблем.

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

А ведь не хочется откатываться к PHP 5.3.x, все же говорят что в новой версии скрипты должны работать до 20% быстрее.

Полез искать инфу. И по ходу поисков обнаружил другое, что и Zend Optimizer, другой альтернативный механизм кеширования (тот который в PHP 5.3 зачем-то обозвали Zend Guard), тоже не поддерживается в PHP 5.4.x

Зато нашел, что-то более интересное. Оказывается, в настоящее время вовсю разрабатывается новое поколение Zend Optimizer-а, который теперь называется Zend Optimizer Plus и, по всей вероятности он же будет включен в дистрибутив PHP начиная с версии 5.5.x.

Но даже это не самое интересное. Изюминка заключается в том, что этот механизм кеширования разрабатывается в первую очередь для работы с Zend Framework (упс, какое совпадение:-) ).
А ведь Magento наша любимая как раз и создана на этом самом фреймворке.
Поэтому, очень интересно взглянуть на таблицу, где разработчики сравнивают свой Zend Optimizer Plus с популярным APC.
Как видно, даже без каких-либо оптимизаций (ха, и почему название vanilla меня не удивляет), этот оптимизатор обходит APC почти на 150% именно при работе с Zend Framework.

В данный момент, Zend Optimizer Plus все еще находится в стадии беты, но при этом заявлено, что он будет работать начиная с версии PHP 5.2.x, включая 5.4.x, разумеется.

Zend Optimizer Plus доступен в виде исходников, либо в виде PECL дистрибутива.

Я решил установить PECL дистрибутив.

Убил APC
# pecl uninstall apc

И установил Zend Optimizer Plus
# pecl install zendoptimizerplus-7.0.0
(так как он все еще находится в стадии бета, номер версии дистрибутива обязателен)

Установка прошла вполне успешно и было выдано сообщение, что расширение Zend Optimizer Plus прописано в файле настроек php.ini.
Ага, не тут то было.

Потому что прописалось это расширение не так как нужно.
Пришлось ручками править:
вместо
extension="ZendOptimizerPlus.so"
нужно прописать
zend_extension="/full/path/to/extension/ZendOptimizerPlus.so"

где /full/path/to/extension/ это полный путь к файлу.

Кроме того, сами разработчики рекомендуют ручками прописать следующие директивы:

zend_optimizerplus.memory_consumption=128
zend_optimizerplus.interned_strings_buffer=8
zend_optimizerplus.max_accelerated_files=4000
zend_optimizerplus.revalidate_freq=60
zend_optimizerplus.fast_shutdown=1
zend_optimizerplus.enable_cli=1

Подробно обо всех директивах можно почитать здесь.

Следующим этапом настроек будет установка Memcached. Посмотрим, будут ли здесь подводные камни.

Комментариев нет :

Отправить комментарий