我将开始使用 codeigniter,但由于它只提供缓存所有内容或不提供任何内容(这是行不通的,因为我有登录名和其他无法缓存的区域)我想知道这是否是一个好主意使用Smarty。
我在这个问题上唯一关心的是速度。 (不,是/否聪明的一般问题。)
我的问题: CodeIgniter 与一些数据库查询(博客、从数据库加载页面数据等)
对比
CodeIgniter + 相同的数据库 + smarty + 部分缓存(当然如果 smarty->is_cached(.tpl) 不执行任何数据库请求)
什么是快的,我应该使用什么。有没有我没有看到的智能基准?从多少个数据库请求开始,您会说,考虑到您还必须加载 smarty 库,smarty 可以显着提高性能吗?
提前致谢。
最佳答案
过早的优化是万恶之源。我建议不要担心缓存,除非您的应用程序已完成。然后通过使用 xdebug
或 Zend_Debugger
对其进行分析来查看它的执行情况,并使用 ab
进行一些负载测试。如果可以的话,使用操作码缓存。
如果您认为应用程序太慢,请考虑页面/部分缓存。您不想为了缓存而缓存,而是为了找到并消除瓶颈。如果您对 Smarty 感到满意并希望将其用作模板引擎,那么就使用它吧。如果您不需要模板引擎,还可以将 Zend_Cache
与 APC
或 memcached
一起使用进行缓存。
关于php - 使用 Smarty + 缓存提高性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1920999/