Как предотвратить PropertyInfoExtractor от исчерпания cache.system (apcu cache)? - PullRequest
0 голосов
/ 12 июня 2019

После миграции Symfony на версию 4.3 я начал получать ошибки, подобные Failed to save key "getTypes|getShortDescription|isReadable ..." of type array., через некоторое время на моей "тестовой" настройке. Я начал расследование и обнаружил следующий запрос на удаление, который, похоже, был связан с моими проблемами (https://github.com/symfony/symfony/pull/31452).

Я обнаружил, что PropertyInfoCache записывается в системный кеш. Поскольку я использую doctrine и apcu (настройка api-platform.com) и на самом деле имею некоторые объекты прямо сейчас, сохраненные массивы содержали ~ 1000+ записей и постоянно записывались, что приводило к сбою apcu_store() через некоторое время.

Я попытался найти параметр конфигурации, чтобы «отключить» кэширование свойства, но не смог найти ничего полезного, так как он связан с параметром kernel.debug, который нужно включить / отключить.

После некоторого времени исследования единственное "решение", которое я мог бы найти, - это явно установить пул кеша для property_info для другого адаптера кеша и не дать ему исчерпать apcu:

framework:
    cache:
        pools:
            cache.property_info: 
                adapter: cache.adapter.filesystem

Я не уверен, что это правильное решение моей проблемы, и, возможно, кто-то другой может предложить лучший способ. Но, возможно, это поможет другим, кто сталкивается с той же проблемой

...