如何在 Orocommerce 中正确启用二级缓存

How to properly enable second level cache in Orocommerce

我在 config.yml 中写了以下配置,但我不确定这样做是否正确:

doctrine:
orm:
    entity_managers:
        default:
            metadata_cache_driver:
                type: service
                id:   doctrine.metadata.cache
            query_cache_driver:
                type: service
                id: doctrine.query.cache
            second_level_cache:
                region_cache_driver:
                    type: service
                    id: snc_second_level_cache
                enabled: true
                region_lifetime: 600
            result_cache_driver:
                type: service
                id: doctrine.result.cache

服务配置:

    snc_second_level_cache:
        class: '%snc_redis.doctrine_cache_predis.class%'
        arguments:
            - '@snc_redis.doctrine'

Oro 团队调查了这个特性,目前我们发现它带来的问题多于好处,所以应用程序不支持开箱即用,仅通过配置启用它不会影响任何东西。

但是,如果您想为某些自定义实体启用它,配置似乎是正确的。需要注意的是,ORO中有多个entity manager,不是默认的一个。