Добрый день.
Проект на Symfony 1.2.
В настройках factories.yml на уровне проекта меняю место хранения кэша Symfony с sfFileCache на sfXCacheCache. В результате я хочу, чтобы кэш Symfony хранился не на диске, а в памяти Xcache.
После моих настроек часть кэша Symfony действительно начинает храниться в памяти, но часть каша продолжает использовать диск.
PROJECT_ROOT_DIR/Config/factories.yml:
view_cache:
class: sfXCacheCache
param:
automaticCleaningFactor: 0
storeCacheInfo: true
i18n:
class: sfI18N
param:
cache:
class: sfXCacheCache
param:
lifetime: 31556926
automaticCleaningFactor: 0
storeCacheInfo: true
routing:
class: sfPatternRouting
param:
cache:
class: sfXCacheCache
param:
automatic_cleaning_factor: 0
lifetime: 31556926
storeCacheInfo: true
В память Xcache попадает кэш темплейтов модулей, кэш i18n, кэш роутинга.
А на диске формируются такие файлы:
(ниже в названии пути: index - название приложения, prod - название окружения)
PROJECT_ROOT_DIR/cache/index/prod/config:
config_app.yml.php
config_autoload.yml.php
config_config_handlers.yml.php
config_core_compile.yml.php
config_databases.yml.php
config_factories.yml.php
config_phpexcel.yml.php
config_routing.yml.php
config_settings.yml.php
modules_catalog_brand_config_cache.yml.php
modules_catalog_brand_config_filters.yml.php
modules_catalog_brand_config_module.yml.php
modules_catalog_brand_config_security.yml.php
modules_catalog_brand_config_view.yml.php
modules_catalog_config_cache.yml.php
modules_catalog_config_filters.yml.php
modules_catalog_config_module.yml.php
modules_catalog_config_security.yml.php
modules_catalog_config_view.yml.php
modules_compare_config_module.yml.php
modules_faq_config_cache.yml.php
modules_faq_config_filters.yml.php
modules_faq_config_module.yml.php
modules_faq_config_security.yml.php
modules_homepage_config_cache.yml.php
modules_homepage_config_filters.yml.php
modules_homepage_config_module.yml.php
modules_homepage_config_security.yml.php
modules_homepage_config_view.yml.php
и т.п.
VERSION
При этом если просмотреть файлы, которые лежат в папке кэша, то начинаются они так:
Для модулей:
// auto-generated by sfCacheConfigHandler
...
// auto-generated by sfFilterConfigHandler
// auto-generated by sfDefineEnvironmentConfigHandler
// auto-generated by sfSecurityConfigHandler
// auto-generated by sfViewConfigHandler
Для конфига:
// auto-generated by sfRootConfigHandler
...
В referense описании Symfony есть только упонимнание настройки кэша для view_cache, i18n и routing. Больше настройки кэша ни для чего не задаются.
Файл factories.yml правлю на уровне проекта. На уровне приложения factories.yml настройки не перекрываются. Пробовал даже на уровне Symfony менять factories.yml (SymfonyDir/lib/config/config/factories.yml. Ничего не помогает
Для чистоты эксперемента при тестировании после изменения настроек всегда полностью очищаю папку кэша на диске и полностью память в Xcache.
Подскажите, почему Symfony продолжает сохранять часть файлов кэша на диск и можно ли это как-то исправить?