PHP(Apache)的静态缓存?

3
我正在为客户安装一个预先构建的基于PHP的Web应用程序。不幸的是,该应用程序编译了大量数据,导致性能非常低下。页面加载时间最长达40秒。
我知道有关ob_caching的信息,但除非绝对必要,否则我不想动这个应用程序。
是否有任何工具/脚本/Apache模块可以将整个应用程序的输出静态缓存到服务器上,并定期更新呢?我只是在寻找一个中间件或类似的东西,可以从PHP应用程序中构建定期的静态HTML页面。(顺便说一句:我尝试过eaccelerator,但没有改善情况。)
如果您有任何提示,我将不胜感激。
提前感谢您。

1
不要忘记给帮助你最多的答案点赞并选择为最佳答案。 - Dzhuneyt
2个回答

2
eAccelerator应该会有明显的改善,你确定它被正确地安装了吗?在phpinfo()中应该看到一个eaccelerator部分,显示缓存已满。你也可能将缓存设置得太小等问题。或者,尝试使用APC。如果两者都没有显示任何性能提升,则可能存在服务器问题。
无论如何,40秒对于任何事情都太慢了。你确定这是PHP而不是优化不良的SQL查询吗?

2
我的猜测是他的代码里可能有一些非常愚蠢的东西,或者几个没有索引的大型SQL查询。在进行任何性能优化(包括缓存)之前,您应该对代码进行分析以找出问题所在。 - Keith Palmer Jr.
1
@KeithPalmer +1。我推荐使用xdebug分析器:http://www.xdebug.org/docs/profiler - Matt Gibson
感谢迄今为止的回答。是的,我知道我应该看代码。正如我所说,我没有构建它,所以我认为如果我甚至不碰它,只是缓存它,那么工作量会更少。:D也许这不是最好的主意...只是为了给你一个想法:应用程序正在读取一个ics(日历)文件,并将其放在一个漂亮的基于Web的显示中。它被称为phpicalendar。也许它只是糟糕的... :D - Jelko
@webstyler 听起来不应该有任何原因需要花费40秒钟!祝你分析好运。你可能会发现一旦对其进行分析,它就会变得非常快速。 - Matt Gibson

0

好主意。但我认为,除非我显著改进应用程序,否则mod_cache无法帮助。我想创建静态页面以提高速度。但是,根据上面的评论,这可能不是一个好主意。 - Jelko
因此,结果可能会有所不同。你确实要求一个中间件解决方案 :) - Lior Cohen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接