什么是缓存?一起学习这种常见而复杂的技术

什么是缓存?一起学习这种常见而复杂的技术

在网络上获取信息需要处理能力和时间。数据需要从一台服务器传输到另一台服务器。使用缓存减少了这个时间和资源使用。

回答什么是缓存取决于上下文。总的来说,缓存是一种保存和快速调用常用数据的方法。管理缓存,尤其是在使用WordPress时,可能是流畅、快速运行的站点和令人沮丧的缓慢站点之间的区别。

这篇文章将回答“什么是缓存?”的问题。并提供一些有关如何管理您的见解。

  1. 什么是缓存?
  2. 缓存如何帮助您优化网站
  3. 使用缓存的网站技术
  4. WordPress如何处理缓存
  5. 如何安装缓存插件
  6. 如何清除缓存

什么是缓存?

Web缓存的工作原理

Web缓存的工作原理

缓存获取应用程序处理的数据并将其存储以备后用。它并不一定要在本身的浏览器,但你会发现网站和其底层技术的使用缓存很多。 “缓存”是存储和调用已保存数据过程的术语。缓存通常包括两个元素:

  • 缓存软件本身运行该过程并将其在各种其他元素之间穿梭。
  • 随机存取存储器 (RAM) 和“内存中”引擎。它们存储通过缓存技术传递的数据。

这些元素必须是高质量和协作的。性能低下的RAM将无法足够快地调用数据以使软件有效地使用它。

考虑到页面文件的大小,大多数Web应用程序几乎都需要缓存。在某些情况下,可靠的实现可以为您提供宝贵的时间。评论网站加载速度快的用户间接称赞了网站服务器核心的缓存软件。我们将在接下来更详细地介绍这一点。

缓存如何帮助您优化网站

计算机技术在不断扩展。换句话说,内存、硬盘空间和其他此类计算机处理元件的大小正在快速增加。在我们的个人计算机中使用64KB RAM的日子已经一去不复返了。现在通常可以看到千兆字节 (GB) 的RAM。一些较新的Apple MacBook甚至可以容纳64 GB的内存。

由于现代Web开发和相关技术放置现场代码的需求,网站也变得越来越重。它不仅需要为最终用户提供更多的处理能力,还需要更强大的服务器和技术来适应。如果没有内存(和缓存),加载速度会慢到爬行。

因此,搜索引擎优化 (SEO) 早就认识到页面速度是网站排名的主要因素。虽然不知道确切的细节,但在搜索引擎结果页面 (SERP) 中放置站点的排名因素包括对站点速度的引用。

文件大小精简而平均也同样好

文件大小精简而平均也同样好

虽然排名指标不会像您想象的那样使用网站速度作为直接衡量指标——有太多因素在起作用,无法将其用作可靠的指标——但许多其他方面都将其考虑在内。例如,您网站的HTML代码质量和Google Chrome中的加载时间也会产生影响。

DevTools中记录的页面加载速度

DevTools中记录的页面加载速度

关于用户体验 (UX),一个长期存在的指标表明用户将在仅等待两秒钟后放弃页面。它带来了几个问题:

  • 您的Google RankBrain优化(包括跳出率)需要准确无误;否则,您的SEO努力将一事无成。
  • 更快的网站加载速度将有助于控制跳出率。
  • 您网站的用户体验是您网站最关键的元素之一。

通过减少页面加载所需的时间,缓存可以在所有这些方面提供帮助。更重要的是,您的站点使用的资源将减少,从而进一步产生影响。总的来说,快速加载最相关和最新信息的网站将比其他网站表现得更好。接下来,我们将研究您在使用缓存时可能遇到的一些问题。

缓存有时如何导致问题

当然,缓存并不总是花里胡哨。主要的问题是实现一个运行良好的缓存。对于许多小型站点(或至少非企业或网络)来说,不需要大而频繁的缓存周期。它可以看到您的服务器浪费资源缓存未更改的页面。

另一方面,缓存不足(或以正确的方式)的策略和实现可能会看到您提供过时的页面。这个问题有时会发生在 WordPress 网站上。但是,有一些技巧可以克服它。

当然,为页面的旧缓存版本提供服务可能会导致问题。考虑一个必须定期更新其信息的流行病资源站点。现在考虑浏览器缓存不足或不存在对页面的影响。

好消息是,设置缓存以减轻或减轻这些缺点的影响很简单。我们稍后会讨论这个。

使用缓存的网站技术

我们已经注意到缓存通常如何以几种不同的方式在计算中涉及。不过,在本文中,我们将研究非CPU缓存。如果您回顾一下Apple MacBook规格,您会注意到处理芯片中通常包含几兆字节 (MB) 的缓存:

Apple MacBook规格显示内置缓存

Apple MacBook规格显示内置缓存

这种缓存也适用于移动设备。但是我们正在研究以某种方式使用服务器的缓存。以下是我们正在谈论的一些不同技术:

  • 浏览器。说到技术,浏览器缓存是您首先想到的东西。它将常规请求存储在缓存中,以便在下一次调用时更快地加载。
  • 设备。虽然CPU本身超出了本文的范围,但设备上的浏览器和应用程序通常会使用存储和 RAM 来缓存数据。
  • 应用。是的,应用程序还可以有一个缓存来存储经常使用的数据。同样,这将使用不是 CPU 的设备上存储来缓存数据。
  • 服务器。缓存的另一个日常用途。可以存储和调用一些来回穿梭的服务器数据,以便更快地执行和处理。这方面的一个例子是Redis缓存。
  • 域名服务器 (DNS) 缓存。一个专注于缓存的应用程序。这里涉及的机器除了缓存数据什么都不做,所以前线服务器可以穿梭数据,而DNS缓存则保证了流畅的运行。

在我们继续之前,值得指出一些与缓存相关的技术。例如,您可能认为存储cookie类似于缓存网页。在很多方面,这是真的。例如,cookies在被浏览器触发后存储在您的计算机上。这里的区别在于cookie存储有关您和您的使用情况的信息,而不是页面状态。

内容交付网络 (CDN)代表着更模糊的水域,因为它与在纸上缓存相同。 CDN将整个网站存储为一组静态文件,而不是直接使用该网站。因此,虽然它表面上具有缓存的特点,但它是一种不同的存储和交付网站的方式,仍然需要缓存才能快速运行。 Cloudflare等一些CDN兼顾了这两个方面(以及更多方面),这就是使站点更快、更安全的原因。

WordPress如何处理缓存

尽管我们喜欢WordPress,但它并不是最快的平台。如果您在网站上使用WordPress,则需要使用缓存来帮助提供快速体验。您的网站速度是您、您的主机和您选择的缓存插件之间的共同努力。注:部分专业的WordPress服务器可能采用了一系列的缓存技术,则不需要任何类型的缓存插件。一般情况下,可能在软件和服务器级别自动提供四种不同类型的缓存:

  • 对象缓存。
  • 页面缓存。
  • 字节码缓存。
  • CDN缓存。

如果都涵盖这些基础,即可确保您的网站优化速度。但是,对于没有提供专业缓存技术方案其他主机的客户,专用的WordPress缓存插件可能是您设置的绝佳补充。 WordPress缓存插件领域有许多可用的解决方案,不得不做出选择可能会让人不知所措。让我们来看看我们最喜欢的一些选项。

WP Super Cache

最直接的选择是选择Automattic的WP Super Cache

WP Super Cache插件

WP Super Cache插件

它被认为是“官方”的WordPress缓存插件。它提供静态HTML文件代替您的动态PHP文件(几乎所有访问者都会看到这些文件,并且不会出现任何功能损失)。

更重要的是,该插件包括“预加载”、“垃圾收集”(删除不再需要的缓存项目)、CDN 和面向开发人员的REST API端点。它是缓存插件的可靠切入点,可能就是您所需要的。

W3 Total Cache

W3 Total Cache长期以来一直在许多用户的安装列表中:

W3 Total Cache插件

W3 Total Cache插件

它被称为“Web性能优化 (WPO)”框架,并声称与 Web 主机的选择无关。它具有丰富的特性和功能,但它以对新用户来说是压倒性的而臭名昭著。 W3 Total Cache有许多功能,但您需要时间以最佳方式使用它。

还有一些简单的缓存插件,在一些用户眼中的表现优于领先的竞争者。例如,WP Fastest CacheLiteSpeed Cache都有好评如潮和简单的仪表板。

WP Rocket

在专业缓存插件方面, WP Rocket占据主导地位:

WP Rocket插件

WP Rocket插件

这是一个高性能的插件,也很容易使用。它应用了一系列最佳实践,拥有超过150万用户。 WP Rocket还兼容大多数WordPress产品和服务。

如何安装缓存插件

至于安装缓存插件,过程很简单,与任何其他 WordPress 插件相同。缓存将在激活时启用,并且通常会有一个专门的面板来处理插件如何缓存您的网站。例如,您可以在设置>WP Super Cache面板中找到WP Super Cache的选项:

WP Super Cache的设置

WP Super Cache的设置

您的特定插件将根据其复杂性和目标具有不同的设置。像WP Super Cache这样的解决方案具有欺骗性。表面上看起来很简单,但正如高级部分所示,引擎盖下有很多东西需要修补:

WP Super Cache高级设置

WP Super Cache高级设置

如果您不确定特定设置的作用,我们的建议是坚持使用简单的选项。大多数缓存插件都有针对不同缓存设置的快速设置选项。例如,WP Super Cache使用SimpleExpert缓存:

WP Super Cache的传递方式

WP Super Cache的传递方式

主要区别在于Expert模式使用Apache的mod_rewrite选项来提供缓存文件。但是,对于不了解文件缓存内部工作原理的用户,Simple交付方法是可以接受的。

如何清除缓存

更常见的需求之一是知道如何清除缓存。正如您所料,有几种方法可以做到这一点,具体取决于您的设备或浏览器。我们将带您了解各种方法,从您的桌面浏览器开始。

清除浏览器的缓存

到目前为止,最终用户与缓存之间最常见的关系是在浏览器中。如果出现问题,清除浏览器缓存是一种久经考验且值得信赖的方法,可以让事情恢复正常。因此,它是一种经常出现的方法,就像关闭和重新打开某些东西一样。每个浏览器都有一个专用的首选项屏幕,让您可以不同程度地访问缓存。例如,您可以在“首选项”窗格中的“隐私”>“隐私”选项卡下找到Safari的缓存

Safari的隐私选项卡

Safari的隐私选项卡

相比之下, Firefox在其首选项隐私&安全部分具有一组全面的功能,与其作为以隐私为中心的浏览器的地位保持一致:

Firefox的隐私和安全首选项

Firefox的隐私和安全首选项

对于大多数基于Chromium的浏览器,例如Google Chrome 、 Brave等,缓存都在同一个地方。以Brave为例,它位于首选项附件选项中,在隐私和安全部分下:

Brave的隐私和安全部分

Brave的隐私和安全部分

相比之下,Chrome将选项放在设置的前面和中间:

Google Chrome的隐私和安全设置

Google Chrome的隐私和安全设置

对于Microsoft Edge ,缓存位于“设置”的“隐私、搜索和服务”部分,在清除浏览数据”下:

Microsoft Edge缓存选项

Microsoft Edge缓存选项

好消息是清除缓存通常是单击一次并等待浏览器执行其操作的情况。大多数浏览器都允许您选择要从缓存中清除的数据,因此,如果您有特定要求,这当然会增加您的“点击次数”。

清除设备缓存

您的智能手机和计算机也有缓存,因为它们也需要存储数据以便随时调用。正如您所期望的,每个操作系统 (OS) 和平台都有不同的处理方式。例如, 在Mac上,您将前往macOS中的 ~/Library/Caches/位置:

Finder的Go窗口显示Mac缓存的位置

Finder的Go窗口显示Mac缓存的位置

到达此处后,您会注意到缓存是可以拖到废纸篓的文件集合:

macOS缓存文件夹

macOS缓存文件夹

对于Windows 10,在整个操作系统中发现了一些不同的缓存。我们有点过头了,但要清除DNS缓存,您需要以管理员身份运行命令提示符:

Windows命令提示符

Windows命令提示符

从这里,输入ipconfig/flushDNS 。运行后,Windows将刷新DNS缓存:

在Windows中刷新缓存

在Windows中刷新缓存

您还会发现Linux发行版使用终端和命令行来清除系统缓存

在Debian中刷新缓存

在Debian中刷新缓存

移动设备通常没有像台式机那样需要清除的中央缓存。因此,您必须逐项完成工作。 Apple iOS是这里最“碎片化”的设备,尽管Android做得更好

清除DNS缓存

我们已经谈到了服务器和DNS缓存,特别是关于清除Windows 10 DNS缓存,但我们还没有谈到为其他平台清除它。

对于不知道的人来说,DNS缓存存储了所有最近尝试连接到Internet的尝试,特别是其域名。换句话说,它是计算机用来确定如何连接到Internet的DNS查找列表。

它与您设备上的其他缓存不同,但可能有一些交叉。在开始清除DNS缓存之前,您应该准备好三件事:

  • 对您的计算机或设备的管理员访问权限。
  • 访问终端、命令提示符或命令行。
  • 使用命令行界面 (CLI) 所需的技能,尽管您不一定需要知道要使用的确切命令。

我们已经在介绍了在每个设备的基础上清除您的DNS缓存。我们建议您查看那篇文章以了解详细的细节。

清除WordPress缓存

谈到WordPress,您可以在几个地方清除缓存。平台本身不持有缓存。相反,有两个接触点需要考虑:

  • 您的托管服务提供商的选项,有时可以在WordPress中找到。
  • 您的专用缓存插件。

根据您选择的主机,您将在控制面板、WordPress中安装的插件(专用于主机的服务器端缓存)或两者中都有一个选项。我们将进一步更详细地讨论这个问题。

此外,您通常会有一个专门的第三方插件来帮助缓存您的网站,并且您会在相关设置或首选项屏幕中找到清除它的选项。

您如何访问它取决于您的插件(接下来我们将介绍一些选项)。例如,WP Super Cache在工具栏和设置>WP Super Cache页面上都显示该选项:

使用WP Super Cache删除缓存按钮

使用WP Super Cache删除缓存按钮

对于W3 Total Cache,您将再次在WordPress顶部的工具栏中找到所需的选项:

W3 Total Cache清除缓存选项

W3 Total Cache清除缓存选项

对于大多数插件,外卖是清除缓存的选项将在工具栏(或标记)内。至于您的主机,您通常会在两个地方找到清除缓存的选项:WordPress仪表板(如果涉及插件)和您的主机控制面板。

一些主机通过插件向WordPress管理员添加特定选项来帮助WordPress用户。在大多数情况下,它们的作用类似于第三方缓存插件。不过,最好的方法(换句话说,您知道的方法)将前往您的托管控制面板并寻找您的缓存选项。

小结

网站需要快速运行。执行此操作的最高效方法是通过缓存。这是一种存储经常在服务器之间拉取和推送的数据的方法。保存后,浏览器可以在瞬间调用它,使您的网站加载速度更快,并使您始终处于SEO的正确位置。

可靠的主机将具有服务器端缓存,并尽其所能确保您的站点以最佳方式使用它。更重要的是,一个好的插件将使您的网站运行得更快,并确保缓存对您网站的各个方面都有帮助。

对于最终用户来说,缓存是一项简单的技术。对于那些深入挖掘的人来说,这是值得花费大量时间的东西,因为你的表现依赖于它。

评论留言