插件会影响站点加载时间吗?

时间:2010-11-13 作者:user1567

有没有什么方法可以测量插件加载所需的时间以及加载的页面(不需要计算整个代码)?此外,我想找出哪些插件在哪些页面中加载文件,并找到那些加载在不相关页面上的插件。

4 个回复
最合适的回答,由SO网友:Chris_O 整理而成

是的,插件影响站点加载时间

有许多写得很差的插件会进行不必要的数据库查询,并将大量文件加载到页面。

额外的JavaScript和CSS文件并没有什么大不了的,除非您使用大量插件。我曾在有30或40个活动插件的大型网站上工作过,服务器在任何高流量期间都会崩溃,所以这可能是一个问题。

要查看正在加载的额外文件,只需查看源代码或使用Firebug上的net选项卡即可

alt text

查找插件加载的外部文件的另一个好方法是使用W3 Total Cache\'s 缩小帮助向导

向导会扫描主题和插件,并推荐要合并和缩小的主题和插件,以及加载它们的页面。

alt text

要监视插件数据库查询和cpu时间,可以在页脚底部添加以下代码。php:

<!--<?php echo $wpdb->num_queries;  
        _e(\'queries\'); ?>. 
           timer_stop(1);  _e(\'seconds\'); ?>.-->
这将允许您查看每个页面的源代码,并查看正在进行的查询数量以及进行查询所需的时间。

例如:

alt text

当然,这不会告诉您哪个插件负责查询,但允许您在禁用和激活不同组合的同时进行测试。

SO网友:Denis de Bernardy

你可以把它们连接成一个新的插件,然后激活它,但你真的是在浪费时间。将它们分开的可维护性使性能优势相形见绌。。。

也就是说,请注意使用大量插件确实会影响网站的性能。。。您可以使用诸如siege之类的基准测试工具轻松衡量这一点(http://www.joedog.org/index/siege-home).

此外,永远不要忘记,WP本身就是一个懒散的资源猪。你可以在页面加载时间外微优化几毫秒,但考虑到任何100毫秒或更长时间内的逐字WP加载,而不是使用好的php框架编写的应用程序的更典型的10-40毫秒加载,我个人不会费事。

SO网友:Omer Greenwald

调试查询插件也可以帮助完成此任务。如果您想更具体一些,并且不介意处理一些代码,可以使用Plugin Test Drive (分离测试的插件)并在调用每个插件文件之前和之后添加以下函数:

<?php 
function getTime() 
    { 
    $a = explode (\' \',microtime()); 
    return(double) $a[0] + $a[1]; 
    } 
$Start = getTime(); 
?>

<?php 
$End = getTime(); 
echo "Time taken = ".number_format(($End - $Start),2)." secs"; 
?>

SO网友:Techwali

要快速找出哪个插件影响站点加载时间,一个简单的方法是使用GoDaddy的P3插件性能分析器。您可能需要多次运行该插件并持续几天才能获得非常准确的图片,但总体而言,它简单方便。以下是该插件的链接:

https://wordpress.org/plugins/p3-profiler/

结束

相关推荐

How do you debug plugins?

我对插件创作还很陌生,调试也很困难。我用了很多echo,它又脏又丑。我确信有更好的方法可以做到这一点,也许是一个带有调试器的IDE,我可以在其中运行整个站点,包括插件?