2016-01-08 3 views
3

Я знаю, что вы можете использовать с Symfony APC или XCache Class Loader. К сожалению, на общем сервере, где я поместил код Symfony, активирован только OpCache.OpCache с Symfony

Могу ли я использовать Symfony с OpCache? Если да, то как и что такое код для ввода моего app.php, пожалуйста? Если нет, то зачем?

ответ

5

Вам не нужно ничего делать в Symfony, чтобы включить opcache. Вам нужно только убедиться, что он включен в вашем PHP configuration (opcache_enable).

Забудьте загрузчики классов APC/XCache.

Класс APC/XCache загрузчик кэширует пути к классам в памяти. Это может быть не всегда полезно для вашего приложения, так как это приведет к дополнительным вызовам apc/xcache, которые в некоторых случаях могут быть более медленными.

Оптимизируйте карту класса композитора.

Убедитесь, что вы dump an optimised composer class map в производственной среде:

composer dump-autoload --optimize 

Это сбросит карту класса в один файл. OPCache будет кэшировать этот файл, поэтому в большинстве случаев он будет фактически более производительным, а затем с помощью ApcClassLoader, поскольку только один вызов будет выполняться в кеше.

+0

Я всегда думал, что использование APC для загрузчика классов не приведет к существенной потере производительности, оно должно протестировать без него, чтобы проверить разницу. – COil

+1

Пока вы оптимизируете карту класса композитора и включаете opcache, вся карта должна идти в память (и будет загружена только один раз). Связанный вопрос: http://stackoverflow.com/questions/13892614/composer-vs-symfony-2-autoloader –

+0

Кажется логичным, я попробую. Спасибо Якубу. – COil

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