数据库驱动的站点在初始页面加载时变得很慢

时间:2013-02-26 21:58:35

标签: php mysql

我开发了一个数据库驱动的网站,实际上也是一个内容管理系统。它主要是供我自己使用,但它也是一个单项目。

我不太清楚它在什么时候发生但现在似乎有一个非常缓慢的初始加载时间。现在加载至少需要6秒钟,有时候会慢一点。一旦它最初加载,它几乎是在重新加载或加载任何其他页面瞬间。如果你离开它然后在一段时间后再回到它(不确定多长时间......可能是一分钟或2分钟)再加载任何一页需要6秒或更长时间。

我使用了webpagetest.org,结果显示第一个字节的时间非常长(有时多达10秒)。我可以在其他时间处理其他问题,例如图像大小,但是需要解决的是初始页面加载。如果它与php包含文件有关,那么为什么页面会在初始加载后立即加载?

我知道我应该调查它,当它第一次似乎放慢速度但不幸的是我无法确定准确的时间。我在谷歌搜索有关加载速度慢的问题,我找不到任何人就真正的慢速加载问题给出任何真正的建议。这些都是基本的东西,比如“确保你没有太多单独的CSS文档”或“不要使用大图像”。除了这些是常识之外,它们也非常微不足道......

我会抛出一些想法,看看是否有人可以确认网站本身的一般设计缺陷。

我曾经在每个使用数据库的包含文件中单独连接到数据库,但后来认为这似乎没必要,所以现在我只是在所有页面的开头连接到数据库(我在每个主页的末尾fclose)页面也是如此)。我应该在所有包含文件上连接数据库还是这不合逻辑?

所有页面都以与数据库的连接开始,并且从数据库中检索头部中的链接。确实存在多个CSS文件,但我看不出这会导致很多时间被添加到初始页面加载中。

所有文章内容(包括主页)都直接从数据库加载。

3 个答案:

答案 0 :(得分:0)

当然,这与某些地方发生的缓存有关。但是,根据您提供的信息,无法确定究竟花了多长时间。 你使用任何PHP框架或库吗?你的设置是什么? ...

话虽如此,未缓存页面的6秒仍然是一个大量的时间,因此会有一些效率低下的代码或数据库设计。但你不能指望这里有一颗银弹。为了能够判断性能,需要查看整个代码,问题可能是很多错误选择的组合......

答案 1 :(得分:0)

如果您的网站上有社交按钮(fb / twitter / g +等),则可能会显着降低网站的速度

答案 2 :(得分:0)

听起来像是一个缓存问题。关于您提供的信息,它不应该是浏览器方面。我也有一种感觉,你不使用任何PHP操作码cacher。我想到的另外两个可能的原因是外部资源或者由于某种原因第一次查询的mysql连接和查询速度慢。在我看来,最后的可能性最高。

相关问题