3

我的问题是 Symfony 2 缓存机制和 Twig 缓存机制是否相同?

假设我决定在我的 MVC 框架中使用 Twig,我会使用 Symfony 2 使用的相同缓存机制吗?我知道 Symfony2 和 Twig 都是由 Fabien 创建的。但我不知道 Symfony 2 是仅使用 Twig 缓存还是还有更多?

所以我希望你能理解这个问题。Symfony 2 是否使用 Twig 进行缓存?如果不是,Symfony 2 和 Twig 缓存之间有什么区别?

4

3 回答 3

8

不确定完整的答案,但 symfony 和 twig 必须使用单独的缓存机制,因为您不必在 symfony 中使用 twig,但缓存仍然有效。有关更多信息,请查看http://symfony.com/doc/current/并深入研究代码。


编辑:扩展我上面的非答案。Twig 缓存实际上是一个编译缓存。您的模板保存为 php 文件。引用 F. Potencier “[...] Twig 缓存已编译的模板以避免后续请求的解析阶段。[...]”(来源

虽然 Symfony 缓存(如前所述)是 HTTP 缓存,但在Symfony Docs 缓存部分中有详细说明

希望这可以帮助。

于 2012-10-10T23:57:37.643 回答
0

Symfony 2 使用 HTTP 缓存来进行缓存。并且 Twig 缓存是 Twig 模板的较量缓存,因此它们不必在每个请求上重新编译。所以 Twig 缓存只确保模板在第一次请求时编译一次。

Symfony 2 HTTP 缓存是另一种野兽 :) 它提供了围绕 HTTP 缓存机制的抽象,因此您可以使用 HTTP 缓存标头等进行缓存...

所以简短的回答是否定的!他们是不一样的!

于 2012-10-11T00:26:21.370 回答
0

不,它们不一样。Symfony 缓存了很多东西,比如路由、翻译、容器等;Twig 只是通过将模板编译成 PHP 类来缓存模板。当然,Twig 的缓存系统也可以在 Symfony 应用程序中运行。

于 2012-10-11T15:54:25.083 回答