Я часто вижу, как люди упоминают, что они используют функцию компилятора Magento.
Я никогда не задаюсь вопросом, в каких случаях вы должны его использовать, и какой прирост производительности вы получаете.
[ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ]: Как я недавно получил предложение об изменении этого. Этот вопрос не о magento2 di-compile, он даже не касается magento2.
performance
compiler
Flyingmana
источник
источник
Ответы:
[ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ] Этот ответ предназначен только для компилятора в Magento 1, компилятор в Magento 2 имеет совершенно другое назначение / эффект
Вы должны использовать это никогда.
Потому что PHP разработал несколько механизмов для улучшения приложений, содержащих много файлов.
Означает: php opCache в текущей версии php улучшает производительность, если правильно настроен. Например, использовать достаточно высокий лимит для кэшируемых файлов. Также в opCache есть улучшения для функций, обращающихся к файловой системе, которые работают на более глубоком уровне, чем aoe_classpathcache, и еще больше повышают производительность.
В конце концов, у нас есть автозагрузка, которая не требует более нескольких мс без компилятора. Есть даже случаи, когда компилятор вредил производительности. Не говоря уже о сумасшедших трудоемких задачах по отладке приложений с помощью компилятора.
Кроме того, opCache не только улучшает автозагрузку, оптимизация функций файловой системы даже улучшает загрузку файлов шаблонов и макетов.
http://php.net/manual/en/opcache.configuration.php
источник
realpath_cache_size=64k
иrealpath_cache_ttl=3600
. 64к, кажется, самое приятное место, люди рекомендуют больше, но тестирование производительности показывает, что это пустая трата памяти.«Когда мне следует использовать Magento Compiler»
Если по какой-то причине в вашей системе не установлен PHP Accelerator (маловероятно, но возможно)
Если вы используете очень старую версию magento (вам действительно не следует)
Почему вы должны держать его отключенным?
Я полностью согласен с комментариями Fiasco Labs выше. Хотя вы не указали номер версии magento, это верно для всех версий magento (CE) более 1.6.1, если вы включаете компилятор в системе, в которой уже есть php-ускоритель (например, PHP-APC и т. Д.), Для всего вашего магазина от страниц администратора до регистрации клиента будет заметно медленнее, но, что еще хуже, многие плагины / моды, которые вы найдете в magento connect, не будут работать правильно при активном компиляторе.
Короче говоря, в 2014 году никогда не было веских причин для включения компилятора.
источник