symfony缓存组件:为我的所有redis池定义一个特定的前缀?

cnwbcb6i  于 2021-06-09  发布在  Redis
关注(0)|答案(0)|浏览(349)

我刚刚强制从条令缓存切换到symfony缓存组件(sf4.4)。我错过的一件事是为缓存池定义精确前缀的能力。原因是我想在应用程序之外运行脚本,可以清除任何特定应用程序的全部redis缓存。以前做起来容易多了,因为我可以扫描并删除所有以特定前缀开头的键。
缓存组件页面上的文档对此非常模糊,我尝试在问题页面中搜索,似乎说如果您手动定义池而不是使用配置,就可以做到这一点。
我发现这样一个问题:在symfony上设置redis cache prefix key,但是prefix\u seed似乎不起作用。事实上,根据文件,前缀\u seed是用来作为1的因素来计算散列只?
我也试过这样的方法:

services:    
  cache.adapter.redis_http:
    parent: 'cache.adapter.redis'
    public: true
    autowire: true
    autoconfigure: false
    tags:
      - { name: 'cache.pool', namespace: '%store_id%.http' }

它可以工作,但是如果我有20个池,我就必须定义20个不同的服务。有没有办法让它工作,使关键将是myprefix\u symfonyhash?
不过,我找不到任何关于如何做到这一点的明确文件。任何一个指针都是非常感谢的。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题