我刚刚强制从条令缓存切换到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?
不过,我找不到任何关于如何做到这一点的明确文件。任何一个指针都是非常感谢的。
暂无答案!
目前还没有任何答案,快来回答吧!