提高网站的性能

时间:2010-03-21 15:10:38

标签: php mysql web performance

我设计了一个新的网站。我在网上托管了它。我希望它具有最佳性能并加快页面加载速度。

本网站使用codeigniter在php 5.0+中设计。这是使用mysql作为DB。我有图像。我正在使用Nitobi网格在页面上显示记录集。其余的是一切正常的页面控件。

由于我对网站性能因素不太熟悉,我想获得有关可以提高网站性能的因素的建议和细节。请告诉我如何改善我的表现。

另外,如果有任何方法可以衡量网站的性能以及任何帮助测试性能的网站或工具,请告知我们。

10 个答案:

答案 0 :(得分:1)

首先,获取FirefoxFirebug,然后安装YSlow。 YSlow提供有关网站客户端性能的详细信息。这是一个User Guide

要获得服务器端性能,请查看Apache JMeter

答案 1 :(得分:1)

您是否考虑过操作码缓存,APC,内存缓存等?正如另一个人所说,你需要计算页面的加载时间,并尝试找到可以重构的潜在SQL瓶颈和/或脚本。您可能还想查看安装webgrind之类的内容,以便了解页面加载时会发生什么以及每个过程需要多长时间。

答案 2 :(得分:1)

您可以在已经提到的Firefox Firebug插件中看到主页面及其包含的组件的加载时间。在那里,您可以看到由于拥有大量外部内容(如用户添加的图像等)或由于其本身而导致页面速度较慢。

在第一种情况下,除了删除占用大部分时间的内容之外,你可以做的不多,在第二种情况下,考虑到PHP应用程序中大多数时候性能问题依赖于这一事实,你需要看看你的PHP代码。关于不完美的数据库交互(编写错误的查询,当一个人满足时重复查询等)。

答案 3 :(得分:0)

性能分析是性能优化领域的关键词。 要分析您的站点,您必须测量2个不同的区域:php脚本运行时间和整页加载时间(包括图片,javascripts,样式表等)。测量PHP脚本非常简单。最简单的方法是将此行放在页面顶部

$TIMER['start']=microtime(1);

并在底部显示这一行:

echo "Time taken: ".round(microtime(1) - $TIMER['start'],3);

如果它低于0.1秒,那没关系。现在到整个页面加载。 Dunno,如果有一些响应时间记录的http嗅探器 编辑:看起来上面提到的Firebug的Net标签是适合此

的工具

答案 4 :(得分:0)

页面生成0.0074秒。 数据库运行时0.0006秒(7.87%),使用1个数据库查询,7个数据库缓存提取,3个RSS缓存提取和61.88 K内存。

http://i42.tinypic.com/2m31frp.jpg

哎!!

不要碰撞 - 这是他的基准;)

答案 5 :(得分:0)

与Kevin所说的一样,我建议尝试使用PHP进行操作码缓存。我不确定哪个是目前最好的,但是当我一年前查看它时,我决定选择[eAccelerator] [1]并且效果很好。我也在另一台服务器上使用了APC,但我更喜欢eAccelerator。

你很可能会按照Shrpnel上校的建议去做一些分析。

[1]:http://en.wikipedia.org/wiki/EAccelerator eAccelerator

答案 6 :(得分:0)

从服务器角度来看:

  1. 正如其他人写的那样;使用php加速器(我使用APC,这是 应该成为php的标准)
  2. 照顾数据库;查询数量,查询复杂性,结果集中的数据......可能会产生重大影响
  3. 缓存动态网页
  4. 从浏览器角度来看:

    1. 最小化JS和CSS文件的数量 (其中一个是理想的),把css放在头部,js低于
    2. 避免调用第三方javascript(分析,小部件,...)
    3. 检查图像大小(我使用smush.it
    4. 这些影响可能是巨大的,CFR。 tests I ran on my (wordpress-based) site

答案 7 :(得分:0)

如果你有时间玩Facebook {/ p>开发和使用的HipHop

答案 8 :(得分:0)

This site将衡量您网站的综合效果标记,并为您提供相关建议。您所要做的就是输入网址。

答案 9 :(得分:0)

我建议尝试一下Clicktale。我已经使用它2个月了,看看你的用户做了什么很好,我学到了很多。