什么在预热缓存预热?

时间:2015-08-15 15:33:02

标签: php symfony caching

有人可以用新手的话说明清除后warming up缓存是什么意思吗?

在Symfony2中,有一个允许清除缓存的命令:

php app/console cache:clear

但有时在安装一些软件包时,安装会尝试清除缓存,当失败时,它会抛出一条警告说:

  

无法使用--warmup清除缓存。

为什么要在捆绑安装期间清除缓存?为什么要热身?你通常的解释非常珍贵。

1 个答案:

答案 0 :(得分:7)

缓存预热是为您的应用程序生成新缓存。因此,当用户请求打开您应用的页面时,它可以从生成的缓存中读取数据并将其返回。

缓存清理实际上是清理旧缓存。如果您进行缓存清理而不是预热,当新请求到来时,应用程序将执行检索数据所需的所有作业并生成新缓存,然后返回结果。如果缓存在此之前已经预热,那么它将被直接返回,因此响应速度会快得多。

安装新捆绑包时..安装新捆绑包然后在您的应用中使用它。因此,您对源代码进行了更改,例如将bundle注册为服务,例如从控制器调用该服务以及此类事情。但是之前生成的缓存并不知道这些更改。因此,应该清理缓存并再次生成缓存(预热)以记住更改。我想这不是一个很深的答案,但试着给它一个简单的解释。