在部署中清除redis中的doctrine缓存
我们将我们的教条缓存保存在redis中,并使用capistrano进行部署。 一切工作都很好,直到我们必须删除实体上的字段。
当在composer中执行安装后命令时,我们会得到如下错误:
[ReflectionException] ** [out Property Entities PlayerRecord :: $ shirtNumber不存在
$shirtNumber
是我们删除的字段。 为了能够继续,我们只需要清除doctrine缓存,但因为它位于redis数据库中,所以缓存与生产共享。
问题是我们如何动态地改变每个部署的redis连接设置? 我想到的唯一想法是:
你有其他的想法,或者你认为哪个更好?
因为我自己缺乏知识,所以我似乎试图让事情过度复杂化。
我使用Doctrine Cache命名空间解决了这个问题
我使用的是SncRediBundle,解决方案只是使用这个配置:
doctrine:
metadata_cache:
client: cache
namespace: "%kernel.root_dir%"
entity_manager: default
链接地址: http://www.djcxy.com/p/24281.html