WPML

在本教程中,我们将解释如何使用 Query Monitor、理解其报告并采取正确的操作。您将能够了解导致站点性能问题的原因,并采取正确的步骤来解决这些问题。

安装 Query Monitor


要安装该插件,请访问您站点管理后台的插件页面,然后单击顶部的安装插件按钮。在搜索字段中输入“query monitor”,然后单击现在安装 按钮。最后,在激活 按钮出现时单击它。
安装 Query Monitor 插件
安装 Query Monitor 插件

请注意,Query Monitor 本身需要占用大量资源。您应该仅在排查性能问题时激活它,并在之后将其停用。


您希望了解站点对访问者(而不仅仅是管理员)的性能表现。Query Monitor 允许您使用“身份验证 cookie”来实现这一点。

前往插件 页面,找到 Query Monitor 并单击其设置 链接。插件窗口将在页面底部打开。单击 设置身份验证 cookie 按钮。

设置 Query Monitor 身份验证 cookie
设置 Query Monitor 身份验证 cookie

如何使用 Query Monitor


运行 Query Monitor 后,管理工具栏将显示一组性能值,如下所示:

  • 0.17s 10,453kB 0,0323s 123Q

它们显示了页面加载时间、使用的内存、数据库请求时间以及数据库请求数量的值。

将鼠标悬停在此信息上可打开 Query Monitor 的下拉菜单。单击任何菜单项即可打开包含更多信息的附加面板。

Query Monitor 的主菜单
Query Monitor 的主菜单

对于测试性能来说,第一个菜单项 查询 是最有用的。单击它,将会显示一个面板,其中包含有关数据库查询的大量重要信息。

“查询”面板显示有关数据库查询的信息
“查询”面板显示有关数据库查询的信息

阅读信息


在 WordPress 中查询数据库最重要的方法是使用 WP_Query 类。您可以按顺序、受影响的行数和时间对查询进行排序。按时间排序可让您首先关注最繁重的查询。

在我们的示例中,测试站点最繁重的查询来自 wp_load_alloptions()WP_Query->get_posts()

按时间对查询进行排序使我们能够查看哪些查询处理起来最繁重
按时间对查询进行排序使我们能够查看哪些查询处理起来最繁重

第一个查询加载插件和主题的所有选项。它来自 WordPress 核心,因此我们无法采取任何措施来改进它。

第二个查询来自 get_posts()。因为我们目前位于 WooCommerce 商店页面上,所以此查询会加载产品。

按插件筛选结果


可以按组件(插件)筛选查询,我们可以看到在测试站点上,我们的 WP Happy Blog 测试插件进行了相当多的调用。总时间为 0.0651s 中的 0.0179s(显示在顶部的管理工具栏中)。
按特定组件(插件)筛选的结果
按特定组件(插件)筛选的结果

因此,将近四分之一的调用是由该插件发出的。这看起来可能很多,但也取决于该插件正在执行的操作。

性能分析


特定插件查询数据库的次数可能会有所不同,具体取决于已安装插件的数量及其设置。

在下图中,我们可以看到几乎 50% 的数据库请求时间(0.1333s 中的 0.0513s)被 woocommerce-products-filter 占用。

对 WooCommerce 单个产品页面进行性能分析
对 WooCommerce 单个产品页面进行性能分析

如何提高站点的性能


在分析站点性能时,最好首先找出哪个插件占用了大部分的数据库请求时间。尝试停用该插件,或将其替换为更好的插件。

如果您不确定是哪个插件拖慢了您的站点,可以逐个暂时停用插件,并查看其对性能的影响。

此外,尝试将主题切换为默认主题,并查看对性能的影响。我们遇到过一些情况,某些低效的插件和主题通过 WPML 对数据库发出了过多的请求。


当问题似乎与 WPML 相关时,最好检查一下哪个 WPML 插件对性能的影响最大。

无论如何,请确保您的站点运行的是最新版本的 WPML 插件。

仍然存在性能问题?


如果您仍然遇到问题,我们建议遵循有关预防 WPML 性能问题的提示。

如果按照该页面上的步骤操作没有帮助,最好向我们的支持团队提交工单。我们的支持人员可以查看您的站点并分析问题的来源。

觉得有用吗?分享这篇文章: