我为应用程序中的每个模块定义了路由,而不是每个模块的堆(可能有 10 个)。我还设置了这些路由的缓存,以便 ini 文件仅解析一次,然后作为 Zend_Config_Ini 对象数组存储到缓存文件中。该文件大小为 100kB。然后,每次解析 Bootstrap (因此每个请求)时都会读取此文件,并将路由添加到路由器。
我想减少解析这些路由所花费的时间,但我是否试图在这里过度优化?或者我在路由器中缺少一些具有更好缓存系统的东西? (我目前只使用Cache核心文件)。
顺便说一句,我的应用程序在本地会立即加载,但在运行时需要几秒钟的时间来思考某些事情。服务器上的其他网站速度更快,我如何找出是什么导致速度变慢?
最佳答案
这是一个很大的话题。需要进行大量研究。
您是否有任何衡量应用存在性能问题的指标?我怀疑解析 ini 文件是问题所在。需要遵循的一些基础知识(排名不分先后):
- 缓存 Zend_Db 元数据:http://framework.zend.com/manual/en/performance.database.html
- 遵循 Zend 文档性能提示:http://framework.zend.com/manual/1.10/en/performance.html
- 阅读 Padraic Brady 的免费在线书籍:http://survivethedeepend.com/他有一个关于性能的部分,但技巧遍布整本书
- 您使用 .htaccess 吗? http://www.armando.ws/2009/03/how-to-run-zend-framework-with-no-htaccess-file/
- 你使用 Xdebug 吗? http://giorgiosironi.blogspot.com/2009/10/optimizing-php-application-in-5-minutes.html
- 操作码缓存? http://www.php.net/apc/
关于php - 最小化 Zend 框架路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3909371/