Symfony3:路由&高速缓存

时间:2015-12-10 12:16:22

标签: caching routing symfony

我正在计划我的第一个项目与Symfony 3.0的实际版本。所以这不是我的最后一个问题:)

目前我最想知道的是路线。在symfony书中,实现路由的默认方式是使用控制器类中的注释。这是否意味着每次有人点击我的URL所有类都被解析以找到最匹配的路由?这不是一个真正的性能问题吗?或者是否有内置缓存?

2 个答案:

答案 0 :(得分:2)

注释被编译为以这种方式缓存的PHP代码(check documentation),但是url在每个请求的开头都与规则匹配。

答案 1 :(得分:2)

我建议看看谈话

Symfony Routing Under the hood - David Buchmann

对Symfony Routing组件进行了很好的概述。

路由是在php代码中编译的,它缓存在prod环境中

优化的要点是:

  • 编译到PHP的路由
  • 转储缓存匹配器,单一类
  • 分组相似路线
  • 首选strpos,仅在需要时使用正则表达式
  • 正则表达式中的大量量词

希望这个帮助