Приложения для Symfony2 YML по каждому запросу

У приложения Symfony2 есть некоторые проблемы с производительностью, поэтому я запустил webgrind, чтобы посмотреть, что происходит. Оказывается, он обрабатывал огромное количество файлов YML по каждому запросу, и я не могу понять, почему. У меня уже включено кэширование APC, поэтому я не знаю, что это может быть. Любая помощь в этом вопросе будет высоко оценена.

Изменить: Вот скриншот веб-страницы, в которой я работал. http://i.imgur.com/m7g6l.jpg

Из моих исследований оказалось, что APCClassLoader не приводит к тому, что Symfony2 кэширует файлы YAML, используемые в Doctrine. Кажется, что кеширование файлов конфигурации по умолчанию (config.yml, parameters.yml), но фактические файлы ORM YAML, используемые Doctrine, не кэшируются, если вы не указали драйвер кэша, как показано в документации, приведенной ниже:

http://symfony.com/doc/2.3/reference/configuration/doctrine.html#caching-drivers

Таким образом, возможно, что решение выше решило проблему, если у плаката была только конфигурация YAML, а не доктрина YAML. Однако, если задействована Doctrine YAML, необходимо указать драйвер кэша Doctrine.

Это также влияет на пользователей, использующих аннотации, поскольку они будут анализироваться при каждой загрузке страницы, если не указан драйвер кэша (кроме кэша массива по умолчанию Doctrine).

Думаю, что я должен опубликовать сообщение, потому что это сложная проблема, и приведенный выше ответ вводит в заблуждение в моем случае, когда файлы Doctrine ORM YAML были источником проблемы кэширования.

Эта должность содержит более подробную информацию по моей конкретной проблеме и резолюции:

Почему приложение Symfony2 тратит 70-90% своего времени на анализ YAML?

Выяснил, что происходит. Я использовал APC и работал, но не использовал ApcUniversalClassLoader в моем autoload.php. Подробнее здесь . Когда они говорят в «рекомендациях» документов для повышения производительности, они действительно означают «вы должны это сделать, или ваша производительность будет ужасной».