谁能用新手的话解释一下warming up
a缓存清理后是什么意思?
在Symfony2中,有一个命令允许清除缓存:
php app/console cache:clear
但有时在安装一些包时,安装试图清除缓存,当失败时,它抛出一个警告:
无法使用
--warmup
清除缓存
为什么要在bundle安装后预热缓存?你的解释非常宝贵。
缓存升温是为应用程序生成新的缓存。因此,当用户请求打开应用程序的页面时,它可以从生成的缓存中读取数据并将其返回。
缓存清理实际上是清理旧的缓存。如果进行缓存清理而不进行预热,那么当出现新请求时,应用程序将完成检索数据和生成新缓存所需的所有工作,然后返回结果。如果缓存在此之前已经预热,那么它将直接返回,因此响应速度要快得多。
当安装一个新的bundle..你安装一个新的bundle,然后在你的应用中使用它,你对源代码做一些改变,比如把bundle注册为一个服务,从你的控制器调用那个服务等等。但是之前生成的缓存并不知道这些变化。因此,应该清理缓存并重新生成(预热),以便牢记更改。我想这不是一个深刻的答案,而是试图给它一个简单的解释。
从http://symfony.com/doc/current/reference/dic_tags.html kernel-cache-warmer目的是初始化对象所需的任何缓存应用程序,并防止第一个用户使用任何重要的"缓存"点击"动态生成缓存"。
真实世界的例子:你给出一些需要缓存的统计数据,这样你就可以编写自己的服务,该服务将被调用到kernel.cache_warmer
事件来"静态"执行此任务。