Symfony:清除缓存而不中断服务

时间:2013-09-16 08:11:12

标签: symfony capistrano chef

在生产中,我们使用亚马逊opsworks来协调我们的机器。我已经创建了一个厨师配方来部署新代码(所以实际创建一个新的发布文件夹,在那里做一些事情,然后将符号链接切换到新文件夹)和另一个配置,重新配置我们的symfony应用程序更改一个新的数据库从属时的yml文件添加等等。

问题是重新配置阶段发生在当前正在运行的代码上,并且因为我已经运行了cache:clear和cache:预热请求同时失败,因为他们找不到缓存文件/文件夹。

我怎样才能立即清除缓存?也许在另一个文件夹中加热然后切换它们?

更好的解决方案?

1 个答案:

答案 0 :(得分:2)

自己发现缓存:clear(没有--no-warmup)实际上在另一个文件夹中进行预热并在完成时进行交换。

我没有使用它的原因是因为在不使用时没有使用--no-warmup&& cache:warmup现在似乎已经解决了。

让我们看看在这次变化之后事情是如何运作的,如果我不再遇到这些问题

更新:

我做了一些启动新机器的测试,运行缓存:在请求负载很重的情况下清除,到目前为止还没有php警告/错误。

我认为这是我问题的最终解决方案