查询监视器 - 轻松调试和提高 WordPress 性能

已发表: 2022-05-16

在本教程中,我们将学习如何使用查询监视器插件来找出 WordPress 网站运行缓慢的原因。

在找到瓶颈之前停用插件通常是识别麻烦插件的最佳方法。

但是,有一种更有效、更快的方法可以做到这一点。 为了解决这个问题,创建了查询监视器。 您的 WordPress 站点将变得更加高效,您可以调试性能问题,并且您将更好地了解您的站点。

目录

什么是查询?

“查询”是对来自数据库的信息的请求。 当 WordPress 从您的数据库中请求信息时,它会使用查询来完成。

当有人访问您的网站时,会在后台启动几个查询。 您可以通过跟踪这些查询来执行以下操作:

  • 确定哪些插件或主题对您网站的性能影响最大 每个查询都需要时间,工具发出的请求越多,它对您网站性能的影响就越大。
  • 跟踪您正在使用的资源。 您可以通过一些查询监控工具观察您正在使用多少 RAM,以及有多少信息被成功缓存。
  • 提高您的故障排除技能。 如果您知道如何跟踪查询,则可以更快地解决很多困难。 例如,如果插件运行不正常,则查询可能未正确触发。

您可以通过使用查询监控来确定哪些插件或主题使用的资源最多,以提高您网站的性能。

什么是查询监视器?

Query Monitor 是一个免费工具,用于调试 WordPress 网站并评估其性能。 该应用程序分析向服务器发出的每个请求,包括数据库查询、HTTP 请求、挂钩和操作等等。 可以通过此工具识别导致加载时间问题的插件、脚本或数据库查询。

您可以使用查询监视器插件来确定您网站的性能问题是由明显原因引起的,还是由更复杂的问题引起的。

查询监视器的不同功能?

以下是查询监视器的一些功能:

  • PHP 错误
  • 主题错误
  • REST API
  • AJAX 调用
  • 验证
  • 隐私声明

现在让我们详细看看这些功能

PHP 错误

PHP 代码由主题或在 WordPress 中生成请求的插件生成。 使用 PHP 错误,可以识别导致错误的组件以及位置。

主题错误

由主题触发的所有查询都按主题特征列出。 显示每个查询的主题模板名称和层次结构。 此外,它会突出显示尚未加载的主题部分以及活动主题的名称。

REST API

如果您有权限,查询监视器允许您调试包含在经过身份验证的 WordPress REST API 请求标头中的信息。 但是,该插件目前仅显示 PHP 错误和内存使用情况。

AJAX 调用

动态 WordPress 站点使用 Ajax 实时发送和获取数据,而无需加载整个网页。 Query Monitor 还提供相关的调试信息以及这些请求。 这些详细信息可帮助开发人员更轻松地识别错误。

验证

WordPress Multisite 的超级管理员和单站点安装的管理员默认可以查看日志。 即使以用户身份登录,您也可以使用身份验证 cookie 查看日志。

隐私声明

WordPress Query Monitor 不会收集或发送任何数据,以确保用户的隐私。 此功能使插件更加可靠和值得信赖。

查询监视器的目的?

不仅可以使用 Query Monitor 调试 WordPress 查询。

作为插件的主要好处之一,查询监视器对于调试数据库查询很有用。

它还涵盖特定于性能和一般开发的调试。 查询监视器的主要限制是它主要用于“即时”调试。 数据库查询仅在显示时间等时显示当前页面加载。

如何安装查询监视器?

在 WordPress 中安装查询监视器非常简单。

  • 登录到您的 WordPress 仪表板
  • 单击左侧菜单中的插件 -> 添加新的
  • 搜索“查询监视器”并安装并激活。

查询监视器如何工作?

WordPress 查询监视器在左侧菜单或单独的界面中没有自己的选项卡。 相反,它显示在前端和后端的 WP 管理栏中。

它最初只显示四条信息

  1. 页面生成时间
  2. 内存使用峰值
  3. SQL 查询所用的总时间
  4. SQL 查询总数
查询监视器

当您单击它时,Query Monitor 界面显示为前端和后端页面上的窗口覆盖。 查询监控界面及其信息仅对管理员或超级管理员可见。

现在让我们详细了解这些选项卡

概述

此选项卡显示来自管理栏摘要的其他信息以及一些一般环境数据/信息。 它只是一个概述。

查询

查询选项卡允许您检查当前页面的每个数据库查询。 它是 Query Monitor 信息最密集的部分之一。 您将看到以下信息。

  • 完整形式的查询
  • 查询调用者
  • 查询组件(是否来自核心、主题、插件)
  • 行数
  • 查询花费的时间

您可以将其用于多种用途,例如查找会降低站点速度的加载缓慢的查询。

查询监视器将按主题和单个插件分解查询,以便您观察每个扩展如何影响您的站点。

如果您在此处看到异常低的数字,可能是因为缓存。

共有三个子菜单:

  • 重复查询

为了帮助您调试和简化事情,它显示重复搜索并列出“可能的麻烦制造者”。

  • 来电者查询

允许您查看此页面上的所有呼叫者。 如果您选择一个,则会出现一个关于调用者的查询列表。

  • 按组件查询

提供由 WP 核心、主题和特定插件完成的所有查询的列表。

日志

日志选项卡是一个更高级的选项卡,您可以在其中记录消息和变量。 这可能会帮助您解决技术问题或监控您的站点是否存在问题。

当您最初安装查询监视器时,此选项卡将为空白,因为您没有配置任何日志记录变量。

要求

当前请求的查询变量显示在主请求页面中。 共有三个子菜单

一个。 请求标头

湾。 响应标头

C。 使用中的挂钩

管理屏幕

如果您在 WordPress 管理仪表板中使用查询监视器,将出现“管理”选项卡。 查看带有列表的管理面板时,自定义过滤器和操作是可见的。 它还显示 get_current_screen 的当前状态。

脚本

脚本选项卡可以说是管理选项卡之后最有用的性能故障排除区域。

此选项卡显示页面的所有排队 JavaScript,以及它们的依赖项和依赖项。 您还可以过滤以识别来自某个主机或具有显式依赖项/依赖项的脚本。

总体而言,更多脚本意味着网站速度较慢,因为它们会增加页面大小并添加 HTTP 请求。 此选项卡可用于调查各种扩展的影响并确定减少每个页面上加载的排队脚本数量的策略。

风格

Styles 选项卡类似于 Scripts 选项卡,但它不是 JavaScript,而是显示排队的 CSS。 它是另一个用于调试站点性能的有用选项卡。

在页面上加载额外的样式表,类似于脚本,会导致网站加载速度变慢。

您可以使用此信息来限制需要在网站上加载的样式表的数量,从而减少文件和 HTTP 请求。

钩子和动作

Hooks & Actions 选项卡显示当前页面的所有挂钩和操作,以及它们的优先级。

当涉及到操作时,您可以展开每个操作以查看与其相关的实际文件和代码行。 您还可以按组件从 WordPress 核心、插件和主题中搜索操作。

该区域不是特别以性能为导向的,但它对于定制开发很有用。

语言

语言选项卡显示您网站的语言和文本域,以及每个扩展的语言文件。
如果您有一个多语言站点和/或您的站点使用的语言没有完整的翻译包覆盖,则此选项卡可能很有用。

HTTP API 调用

为页面加载期间发出的所有服务器端 HTTP 请求提供请求详细信息、时间和 HTTP 状态代码。

“没有 HTTP API 调用”应该出现在许多页面上,这是一个很好的指标,因为它表明没有任何东西会干扰您网站的性能。

能力检查

能力检查向您显示哪些用户能力有权访问您正在查看的当前内容。 这对于确定不同用户是否有权访问不同的前端或后端材料很有用。

环境

此选项卡为您提供站点环境的全面概览,包括

  • PHP
  • 数据库
  • WordPress
  • 服务器

条件句

此选项卡允许您检查哪些条件语句适用于当前页面,这对于自定义开发很有用。

有“真”和“假”条件。

使用查询监视器有哪些优点?

下面列出了查询监视器的一些功能

  • 数据库查询、AJAX 调用、REST API 请求和重定向都可以被监控。
  • 确定哪些 WordPress 组件负责每个请求。
  • 检查每个请求需要多长时间来处理以及它检索到的数据。
  • 有关延迟请求、重复查询和其他形式问题的通知会发送给您。

结论

WordPress 网站必须拥有自己的数据库,这意味着它们还必须处理查询。 密切关注这些查询是解决问题并发现插件和主题在幕后工作的好方法。 您的网站越复杂,它需要处理的查询就越多。

注意重复查询以避免兼容性问题很重要。 结果也可以按组件细分。 通过这种方式,您可以跟踪插件和主题进行的查询数量以及它们何时花费比预期更长的时间。