【问题标题】:Best method of Zend Framework cachingZend Framework 缓存的最佳方法
【发布时间】:2010-06-15 02:56:44
【问题描述】:

我有一个使用 Zend Framework 构建的博客,我意识到这对于单独的博客来说可能有点矫枉过正,但我​​计划在未来添加其他功能。不过,我注意到页面可能会更快一些。我已经完成了一个基本的缓存方法,它基本上捕获了 index.php(核心前端和文件后端)中的所有内容,效果很好,但不幸的是它也阻止了动态页面内容的更新(诸如“这是 5 分钟前发布的消息”之类的消息,等)直到缓存期到期。

所以我的问题是提高性能的最佳缓存方法是什么?我正在做相当基本的查询,这些查询大多是简单的选择,没有太多的连接或任何花哨的东西(使用 Zend_Db_Table),甚至在小型数据库页面加载也有点迟缓。缓存查询值得还是我应该把时间集中在其他地方?

【问题讨论】:

  • 什么时候触发缓存:第一次读取还是发布时?
  • 您是否对项目进行了分析以检测当前的瓶颈是什么?

标签: php zend-framework caching


【解决方案1】:

要启用渲染的那种动态性(“X 分钟前发布”),您可以将缓存推向上游一点。不缓存 html 输出,只缓存查询返回的数据。那么您的渲染代码仍然可以访问发布日期数据,并且您的渲染代码可以使用它。

当然,@zerkms 是对的。分析对于识别瓶颈是必要的。

【讨论】:

    【解决方案2】:

    如果当前性能令人满意,将来可能会实施缓存。我的建议是:

    • 先优化前端(压缩CSS、JS,合并成一个文件,避免多次请求,性能见Yahoo规则)
    • 使用操作码缓存
    • ZF 中已经有 Page 后端用于缓存整个页面(您在 index.php 中设置)
    • 如果以上还不够,请分析您的应用程序(例如,使用 ZFDebug),看看有什么问题。然后为工作选择合适的工具。
    • 请参阅我对Zend_Cache_Backend_Sqlite vs Zend_Cache_Backend_File 的回答

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多