【问题标题】:Zend Framework optimization -> "preload everything"?Zend 框架优化->“预加载所有内容”?
【发布时间】:2012-03-24 13:47:27
【问题描述】:

我搜索了一些如何优化 ZF 性能的技巧,我在这里找到了一个很好的列表:
Using Zend Framework for highload projects
(您可以看到 David Weinraub 接受的答案)

我不明白的是 4.point:“预加载所有内容(Symfony 2 Preview 可以!)...”

“预加载所有内容”是什么意思?
当然,如果您有更多提示,您当然可以写一些其他提示,(或者如果上述答案不完全令人满意..)

感谢您的宝贵时间。对不起我的英语不好。

【问题讨论】:

  • 感觉自己经常写这个。您是否尝试先分析您的应用程序以查看是否没有任何明显的瓶颈?必须拥有 APC(并配置有足够的内存来容纳您需要的东西)。之后,您可能会浪费大量时间根据网络上的意见优化无关紧要的事情。没有什么能比分析器更能找出你的代码出了什么问题。
  • 当您分析像 ZF 这样的 PHP 框架的代码时,您会看到有很多调用,加载了很多类。它不能帮助你让它更快。没有一两个大瓶颈可以轻松消除。你唯一能做的就是缓存,缓存,再缓存。预加载,APC 是缓存。

标签: php zend-framework


【解决方案1】:

预加载意味着获取几乎在每个请求中使用的类(如 Bootstrap、Zend_Config、Zend_Registry、Zend_Db 等,具体取决于您的项目)并将它们全部放在一个您首先加载的文件中,而不是进行延迟加载(仅加载需要的时候)。

由于 Zend 不是自己做的,所以当你想更新它时可能会很粗糙。在编辑 Zend 的代码之前,我会尝试以下操作:

Zend 提供了性能指南: http://framework.zend.com/manual/en/performance.html

为了帮助加速您的应用程序,您应该考虑使用 APC: http://php.net/manual/en/book.apc.php

最后,您可以使用 Memcached 缓存计算结果: http://php.net/manual/en/book.memcached.php

必须在多个级别上加速您的应用程序才能最有效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多