WordPress缓存:可以缓存什么以及我们如何做

已发表: 2017-04-28

您希望您的网站快速运行。 一种有助于提高站点速度的技术是缓存。 缓存是一组软件和硬件技术,用于存储数据,以便它们可以快速用于未来的请求。 在本文中,我们将解释什么是 WordPress 缓存,如何在许多不同的级别上实现它,以及我们如何为您处理一切,让您不必担心。

什么是缓存?

在计算中,有一种叫做“缓存”的东西,其中软件或硬件组件用于临时存储值并在将来更快地检索它们。 MySQL 查询或编译的 PHP 字节码等值以及 HTML 和图像等重复数据。 几乎所有东西,真的。

缓存的好处

通过制作数据副本并将它们放置在“缓存”组件中,我们获得了显着的性能优势。 您的访问者可以比未缓存更快地检索缓存内容。 访问者可以比未缓存的内容更快地检索缓存的内容。 缓存组件通常是内存,但可以是比传统存储更快的任何东西。 但是您可以获得多少性能改进?
这完全取决于您可以缓存多少数据,但一般来说,整整一秒的性能提升并不少见。

可以缓存什么?

有几个级别,具体取决于您希望使用缓存优化网站的程度。

HTML 输出

第一种方法是缓存 HTML 页面本身。 有许多 WordPress 缓存插件,例如 WP Rocket 和 W3 Total Cache,可以做到这一点等等。 这些插件缓存 HTML 输出的结果,为将来的请求节省时间。 此外,每个插件都为您提供了缓存失效机制,因此您可以在需要时提供未缓存的内容。

另一种技术是“缩小”HTML,即使其更小。 这给你每页几千字节,但它会随着时间的推移而增加。

您将需要访问仪表板,或者需要一种将插件安装到 WordPress 的方法才能做到这一点。

参考:

  • WP火箭
  • W3 Total Cache WordPress 插件

PHP OpCache

OpCaching 是一种 PHP 获取源 PHP 文件并将它们编译成称为字节码的中间形式的技术。 字节码类似于计算机的机器代码,但它指的是由“虚拟机”(本例中为 PHP)而不是由真实机器执行的机器代码。 由于它是机器代码并驻留在内存中,因此它的执行速度比让 PHP 解释器一次解析一个命令并执行它要快得多。

缓存在该级别将这些字节码数据存储到内存中,以便您的应用程序可以更快地执行。

您需要访问 PHP 配置文件才能启用 PHP OpCache。

参考:OpCache

使用 Pressidium 托管您的网站

60 天退款保证

查看我们的计划

PHP 对象缓存

这是在语言的 OOP 级别上完成的缓存。 PHP 是一种面向对象的语言,这意味着它使用“对象”的概念来描述逻辑、数据和思想。 当您的应用程序运行时,这些对象不断被创建和销毁(动态地,由称为垃圾收集器的子系统)。 这些对象的创建和初始化过程需要时间。 所以对象缓存通过缓存对象本身来解决这个问题。

这是通过诸如 Memcached 之类的插件和 Redis 的各种插件实现的。 Redis 是一个强大的内存数据结构存储,可以用作数据库。 Memcached 是一个分布式对象缓存系统。 它们都是在该级别进行缓存的绝佳选择。

您需要访问 PHP 的配置才能启用 PHP 对象缓存。 您还需要访问 Redis 或 Memcached 实例。

参考

  • Redis WordPress 插件
  • Memcached WordPress 插件
  • Redis 文档
  • 内存缓存维基

MySQL 查询缓存

这是相同的想法,但它应用于数据库级别。 数据库根据输入的查询返回一组数据。 如果您可以缓存这些查询的结果,那么下次有人使用该查询时,他们将更快地获取数据,因为它们将缓存在内存中。

为此,您将需要访问数据库服务器。

参考:MySQL 8.0 查询缓存

为了正确设置和维护所有这些,需要做很多事情。 如果您缺乏经验,技术知识、时间甚至金钱。 但我们可以帮助解决所有这些问题。

我们如何使用 Pressidium 的多层缓存解决所有问题。

答案很简单。 我们在所有地方都实现了缓存:在 WordPress 的所有层上。

对于 HTML 输出,我们实现了两层缓存, hot 和 warm 。 这些层是我们自适应缓存引擎的一部分。 我们的引擎还可以分析您的站点并执行最有效的缓存规则。 但是,我们将在另一篇文章中详细介绍这一点。 所以热缓存是驻留在内存中并且可以快速访问的数据。 暖缓存是驻留在最先进的 SSD 磁盘中的数据。 这会提高整体缓存命中率,并使您的站点的性能明显优于传统存储。

对于我们的企业客户,我们使用出色的内存数据结构存储 Redis 构建了一个对象缓存系统。 最后,MySQL 查询缓存。 这是默认启用的,并由我们的 DevOps 持续监控。 MySQL 查询缓存可以为您提供有关网站性能的宝贵信息。

需要注意的是,所有这些都是在我们平台的后端实现的,而不是通过一些 WordPress 缓存插件。 这意味着a) 我们使用外部服务器进行存储,因此我们不会对您的网络服务器资源造成负担,并且 b) 我们将数据存储在内存中,其访问速度比磁盘快。

无论您的缓存需求和预算如何,我们都可以提供。