Symfony2: Кэшируйте "Загрузчик классов" с помощью Opcache


PHP содержит новый модуль кэширования кода под названием OPCACHE. Symfony2 рекомендуется использовать ApcClassLoader ( на основе APC) или XcacheClassLoader (на основе XCache) для кэширования сопоставления класса с содержащим его файлом. Мой сервер (Apache 2.4 с PHP 5.6) использует OpCache.

  1. Существует ли альтернативное "сопоставление кэша" для OpCache? Я так и не нашел.
  2. Я могу использовать APC и OpCache вместе (я мог бы использовать ApcClassLoader)? Я думаю, что нет.
Author: Simone Nigro, 2015-01-22

1 answers

Использование APC имеет смысл до версии PHP 5.4. Но даже с 5.4 он не полностью совместим. Начиная с PHP 5.5, лучше использовать APCu.

Начиная с PHP 5.5, Zend Opcache является частью основного дистрибутива PHP. Вы можете объединить его с APCu.

Вызовы старых функций APC будут эмулироваться: apc_*()-> apcu_*(). "Эмуляция APC" появится в phpinfo(), когда будет загружен внешний интерфейс APCu.

enter image description here

Итак, учитывая PHP 5.6 с OpCache и APCu, SF2 Загрузчик классов APC должен работать.

Ответ на вопрос 1: Кэш операций - это не полноценный кэш, как APC, это простой кэш кода операции с некоторыми шагами оптимизации. И это не кэш пользовательского пространства - "просто" внутренний кэш, ускоряющий обработку PHP.

 6
Author: Jens A. Koch, 2015-03-28 10:56:10