【问题标题】:Symfony3: Routing & CacheSymfony3:路由和缓存
【发布时间】:2015-12-10 12:16:21
【问题描述】:

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

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

【问题讨论】:

    标签: caching routing symfony


    【解决方案1】:

    我建议看一下谈话

    Symfony Routing Under the hood - David Buchmann

    这很好地概述了 Symfony 路由组件。

    路由编译成php代码,缓存在prod环境中

    优化的重点是:

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

    希望有帮助

    【讨论】:

    • 一张幻灯片显示:dev env checks for file changes; prod env only on cache:clear。有趣的是它在 symfony 书中并没有那么明确。
    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-08
      • 2020-06-01
      • 2017-04-18
      • 2017-12-27
      • 2016-07-22
      相关资源
      最近更新 更多