减少CakePHP应用程序中$ html-> url调用的开销

时间:2011-11-24 10:42:41

标签: performance cakephp html-helper

我们有一个旧的(用CakePHP 1.1编写!)应用程序,在其职责的重压下开始呻吟,所以我们在一些顾问的帮助下进行了大修。

他们已经确定的“快速获胜”之一:由于多次调用$ html-> url,某些网页正在经历无意义的减速。至于我们目前没有使用路由的原因,即使将来反向路由的必要性也不太可能发挥作用,使用$ html-> url可能只是为了它而创建开销。在任何情况下我都会想到一些问题:

(1)即使速度较慢,在可能的情况下做“蛋糕方式”更好吗?对于可能未被考虑的链接使用HTML帮助程序还有其他优点。

(2)我们计划在某些时候升级到更新的Cake版本,可能一直到2.0。使用HTML帮助程序的当前速度是否可能更多地与Cake 1.1相比而不是本身糟糕的设计决策呢?

对这个问题一般对人们的意见感兴趣:对我们来说,剥夺HTML助手的费用是否合适?

2 个答案:

答案 0 :(得分:2)

升级到CakePHP 2.0肯定会提高速度。请注意,从1.1到2.0的升级路径并不顺畅。期待进行大量的手动编辑。

对于$ html-> ur()的多次调用,您可能会觉得这很有用:

http://debuggable.com/posts/how-to-save-half-a-second-on-every-request-of-your-cakephp-app:49a69610-8648-4d65-815d-754c4834cda3

答案 1 :(得分:1)

我宁愿考虑:

  • 重写HtmlHelper :: url()。非常令人惊讶的是,这种简单的功能会对性能产生影响。请考虑使用未来版本中的版本。
  • 缓存视图(或元素,或将这些元素提取到元素中,然后缓存),这样就不会在每个请求中触发它们。