我的问题是Symfony 2缓存机制和Twig缓存机制是一样的吗?
假设我决定在我的MVC框架中使用Twig,我是否会使用Symfony 2使用的相同缓存机制?我知道Symfony2和Twig都是由Fabien创建的。但我不知道Symfony 2只使用Twig缓存还是还有更多东西?
所以我希望你能理解这个问题。 Symfony 2是否使用Twig进行缓存?如果没有,Symfony 2和Twig缓存之间有什么区别?
答案 0 :(得分:8)
不确定完整的答案,但symfony和twig必须使用单独的缓存机制,因为您不必在symfony中使用twig,但缓存仍然有效。有关详情,请查看http://symfony.com/doc/current/并深入了解代码。
编辑: 扩展我上面的非答案。 Twig缓存实际上是一个编译缓存。您的模板保存为php文件。引用F. Potencier“[...] Twig缓存已编译的模板以避免后续请求的解析阶段。[...]”(source)
虽然Symfony缓存是(已经提到过)一个HTTP缓存,但在Symfony Docs cache section
中有详细解释希望这有帮助。
答案 1 :(得分:0)
Symfony 2使用HTTP缓存进行缓存。而且Twig缓存是对Twig模板进行的joust缓存,因此它们不必在每个请求上重新编译。所以Twig缓存只能确保模板在第一次请求时编译一次。
Symfony 2 HTTP缓存是另一个野兽:)它提供了围绕HTTP缓存机制的抽象,因此您可以使用HTTP缓存标头等进行缓存...
所以简短的答案是否定的!他们不一样!
答案 2 :(得分:0)