2014-11-17 4 views
1

У меня есть потенциально очень большой (возможно, несколько мегабайт) класс PHP, созданный, разумеется. Есть ли какие-либо настройки или ограничения, которые могли бы вызвать замедление активности в этом случае?Размер PHP-класса против opcache?

ответ

2

Вы должны проверить опцию opcache.max_file_size. Этот параметр позволяет установить максимальный размер файла в кеш. Таким образом, большие файлы могут быть пропущены с помощью opcode cacher. Однако по умолчанию оно равно 0, то есть все файлы будут кэшироваться.

Следующая опция для проверки - opcache.max_accelerated_files. Для больших проектов с Twig и аннотациями значение по умолчанию 2000 недостаточно. Подумайте о его увеличении.

И последний из них - opcache.memory_consumption. Я заметил, что после достижения этого предела opcache не добавит новые элементы в кеш. Таким образом, увеличьте его до 256M или 512M.

+0

Есть ли способ узнать, когда либо максимальное количество файлов, либо память? –

0

Немногие делают OPCache медленным, например opcache.consistency_checks, если он включен, OPcache проверяет контрольную сумму кеша каждые N запросов, где N - это значение этой директивы конфигурации. Для вашего большого размера файла я уверен, что это не очень хорошая идея.

Кроме того, если вы сомневаетесь, что это происходит с OPCache, почему вы не можете попробовать такие инструменты, как OpCacheGUI, чтобы проверить это.

+0

Потому что я могу попробовать, вероятно, ограничен. Например, если он замедляется на PHP 5.4 под Windows, я, конечно, не смогу его протестировать. Мне нужны либо примеры того, как исправить, когда он замедляет, либо авторитетный ответ, которого он не будет. – chx

+0

Итак, лучше всего ссылаться на эту веб-страницу http://files.zend.com/help/Zend-Server/content/zendserverapi/zend_opcache-configuration_directives.htm Немногие вещи для заметок - opcache.optimization_level, opcache.save_comments (отключите его, чтобы уменьшить размер файла), opcache.enable_cli (Отключить это для попытки), а также подумайте о том, что указали Александр и я. – user3278897

 Смежные вопросы

  • Нет связанных вопросов^_^