当前位置: 首页 > news >正文

一文解读WordPress网站的各类缓存-老白博客

缓存是一种重要的WordPress优化手段,用于提高网站的性能和加载速度。减少计算量,有效提升响应速度,让有限的资源服务更多的用户。本文老白博客便从自己的使用简单给大家介绍下WordPress的缓存,包括 站点缓存(Page Caching页面缓存)、浏览器缓存(Browser Cache)和 服务器缓存(Server Cache)。

原文地址:https://www.xcbtmw.com/29813.html

在这里插入图片描述

1.WordPress缓存简单介绍

1.1 WordPress缓存原理介绍

此处借用 美团技术团队文章说明:一般而言,现在互联网应用(网站或App)的 标准流程如下图所示,用户请求从界面(浏览器或App界面)到网络转发、应用服务再到存储(数据库或文件系统),然后返回到界面呈现内容。随着技术发展,需要处理的信息、所做的计算越来越大,但是我们的服务器性能是有限的。 如何能够有效利用有限的资源来提供尽可能大的吞吐量?

解决方法:打破标准流程,每个环节中请求可以从缓存中直接获取目标数据并返回,从而减少计算量,有效提升响应速度,让有限的资源服务更多的用户

缓存的使用可以出现在1~4的各个环节中,每个环节的缓存方案与使用各有特点。1为浏览器缓存、2为页面缓存,3、4、5为服务器缓存

当老白博客在上述路径设置好对应的缓存,用户访问网站的流程就是和下图类似:

将为每个网页创建一个缓存页面,当访问者访问您的网站时,他们将获得每个页面的缓存(静态)版本。在几秒钟内,WordPress 缓存插件最大限度地减少了访问者的浏览器、WordPress 数据库和 Web 服务器之间传输的数据量,使访问者以更快的加载时间与网站互动。

2.常用的WordPress缓存

2.1 服务器缓存

服务器缓存也类似于站点缓存,但它不是将内容保存在客户端,而是将内容保留在站点的服务器上。
2.1.1 工作原理
a.当用户访问网站并请求该网页时,该网站会从服务器检索数据,生成该网页,并将其显示给用户

b.将响应发送回用户后,服务器会创建网页的副本并将其存储为缓存

c.下次用户重新访问网站时,它不会再次浏览整个过程,而是显示已经保存(或缓存)的网页副本——从而使网站加载速度更快!

在这里插入图片描述

2.1.2 类型
a.对象缓存 – 将数据库查询存储在服务器端缓存中,以便下次访问者请求内容时,服务器可以立即交付内容,而无需重复查询数据库。 b.操作码缓存 – 当 PHP 文件首次加载到网页上时发生。它存储PHP脚本的结果,以便更快地加载,而不是每次您的网站收到请求时执行。 c.CDN 缓存 – 内容交付网络 (CDN) 是位于全球的服务器系统。当用户访问网站时,CDN 会将缓存文件从服务器机柜提供给他们,以减少加载时间。
2.1.3 说明
对象缓存:包括memcached、redis、APC,一般服务器配置之后就差不多了

操作码缓存:PHP 5.5版本起内置的操作码缓存扩展。它具有高效的操作码缓存机制,并且对于WordPress来说是默认启用的。输出已存储为静态 HTML 文件,这减少了服务器必须执行的操作数,从而减少了站点加载所需的时间。

在这里插入图片描述

2.2 站点缓存(页面缓存)

网站缓存(也称为页面缓存)在首次加载网页时临时存储网站数据(如图像、网页、文件和类似的多媒体)。因此,每当用户重新访问网站时,保存的元素都会快速检索并显示给他们。站点缓存是一种客户端缓存。

2.3 浏览器缓存

浏览器缓存存储用户浏览的特定网页的缓存版本,是存在访客自己的浏览器里面的,跟站点缓存类似,都是客户端缓存,存到访客的电脑里面。

有些插件不支持浏览器缓存,这时候可以采用下面的方式使用:

WordPress网站宝塔面板使用Service Worker加速(浏览器缓存)

2.3.1 缓存对象
  • HTML code 网页代码
  • CSS stylesheets CSS 样式表
  • JavaScript scripts JavaScript 脚本
  • Images 图像
当用户重新访问网站时,他们的浏览器将获取缓存的文件并利用它们来组合生成网站内容。

2.4 浏览器缓存和页面缓存的区别

这个我一直不太理解区别,都是客户端缓存,大概把我理解的说一下:

网站缓存:就像网站的临时内存创建方法,能够缓存文件种类少,且文件小,包括网页、图像、文本,这个是默认开启的

浏览器缓存:与临时内存对应,存储文件内容相对较久,缓存的文件种类多,文件量大,包括 HTML 页面、CSS 样式表、JavaScript 脚本、图像和其他多媒体文件

3.使用WordPress缓存的优势

这个我就不展开说了:

3.1 优势

  • 提高页面加载速度和网站性能
  • 减少服务器负载
  • 最小化带宽使用
  • 提升流量处理和资源可扩展性
  • 增强用户体验

3.2 速度调查报告

当将改进的页面加载速度、更好的流量处理、减少的服务器负载和高效的资源利用结合起来时,可以在 WordPress 网站上获得更出色的用户体验。 这意味着访问者将在网站上停留更长时间——然后导致更深入的参与、更多的转化和更高的盈利能力。

在这里插入图片描述

消费者自己承认,他们受到网站性能的严重影响。近70%的人表示页面速度会影响他们从电子商务商店购买的意愿。在加载时间方面,事实证明,每秒增加一次都可能会使转化率降低 17% 。

4.WordPress缓存插件

下面的缓存插件就没啥好说的了,大家选择自己喜欢的就行,无插件缓存也是可以的。

纯代码免插件优化WordPress6.3实现0sql-强化拓展

Nginx环境个人推荐super cache:

WP-Super-Cache专家模式WordPress伪静态规则配置

老白博客的openlitespeed环境就推荐 litespeed cache,对象缓存使用memcached和redis都可以
插件页面缓存浏览器缓存数据库优化加载时间(参考度低)定价
WP Rocket2.5 秒$49
WP Super Cache×2.7 秒免费
W3 Total Cache××1.8 秒$99
WP Fastest Cache×2.4 秒$49.99
LiteSpeed Cache3.0 秒免费
Autoptimize×××3.9 秒免费
SpeedUp Browser Caching××3.6 秒免费
Cachify××3.1 秒免费

5.参考来源

老白博客个人瞎解读,如有误解,纯属巧合!
  • https://stackoverflow.com/questions/4429025/caches-vs-paging
  • https://fearlessdigitaljourney.com/performance/server-cache-vs-browser-cache-vs-site-cache-whats-the-difference/
  • https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching
  • https://www.siteground.com/blog/leverage-browser-caching-in-wordpress/
  • https://tech.meituan.com/2017/03/17/cache-about.html

相关文章:

一文解读WordPress网站的各类缓存-老白博客

缓存是一种重要的WordPress优化手段,用于提高网站的性能和加载速度。减少计算量,有效提升响应速度,让有限的资源服务更多的用户。本文老白博客便从自己的使用简单给大家介绍下WordPress的缓存,包括 站点缓存(Page Cach…...

从零开始:开发直播商城APP的技术指南

时下,直播商城APP已经成了线上购物、电子商务的核心组成,本文将为您提供一个全面的技术指南,帮助您从零开始开发一个直播商城APP。我们将涵盖所有关键方面,包括技术堆栈、功能模块、用户体验和安全性。 第一部分:技术…...

GZ035 5G组网与运维赛题第6套

2023年全国职业院校技能大赛 GZ035 5G组网与运维赛项(高职组) 赛题第6套 一、竞赛须知 1.竞赛内容分布 竞赛模块1--5G公共网络规划部署与开通(35分) 子任务1:5G公共网络部署与调试(15分) …...

分类预测 | Matlab实现KOA-CNN-GRU-selfAttention多特征分类预测(自注意力机制)

分类预测 | Matlab实现KOA-CNN-GRU-selfAttention多特征分类预测(自注意力机制) 目录 分类预测 | Matlab实现KOA-CNN-GRU-selfAttention多特征分类预测(自注意力机制)分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matla…...

【Qt】QString怎么转成int

2023年10月29日,周日晚上 第一种方法 这种方法会尝试将 QString 对象转换为 int 类型。如果转换成功,将返回转换后的 int 值;如果转换失败(例如,字符串中包含非数字字符),则返回 0。 QString…...

ubuntu 22.04 安装python-pcl

ubuntu 22.04 安装python-pcl 安装python-pcl修复bug 由于python-pcl库基本已经停止维护,所以Ubuntu22.04 在使用pip install python-pcl安装的时候会出现版本不适配的原因 安装python-pcl 使用Ubuntu22系统自带python3安装python-pcl,随后将下载的包拷…...

【题解】[GenshinOI Round 3 ]P9817 lmxcslD

题目传送门 分析 看到这道题我一开始是有点懵的,但是看了看数据范围,发现有几个点有 n 为质数 的特殊性质,结论先行,大胆猜测是不是可以贪心,所以先打了一个最傻的代码上去试试. void solve(){cin >> n >&…...

在pycharm中,远程操作服务器上的jupyter notebook

一、使用场景 现在我们有两台电脑,一台是拥有高算力的服务器,另一台是普通的轻薄笔记本电脑。如何在服务器上运行jupyter notebook,同时映射到笔记本电脑上的pycharm客户端中进行操作呢? 二、软件 pycharm专业版,jupy…...

SQL 运算符

SQL 运算符 运算符是保留字或主要用于 SQL 语句的 WHERE 子句中的字符,用于执行操作,例如:比较和算术运算。 这些运算符用于指定 SQL 语句中的条件,并用作语句中多个条件的连词。 常见运算符有以下几种: 算术运算符比…...

中间件安全-CVE 复现K8sDockerJettyWebsphere漏洞复现

目录 服务攻防-中间件安全&CVE 复现&K8s&Docker&Jetty&Websphere中间件-K8s中间件-Jetty漏洞复现CVE-2021-28164-路径信息泄露漏洞CVE-2021-28169双重解码信息泄露漏洞CVE-2021-34429路径信息泄露漏洞 中间件-Docker漏洞复现守护程序 API 未经授权访问漏洞…...

系列九、什么是Spring bean

一、什么是Spring bean 一句话,被Spring容器管理的bean就是Spring bean。...

轻量封装WebGPU渲染系统示例<4>-CubeMap/天空盒(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/version-1.01/src/voxgpu/sample/ImgCubeMap.ts 此示例渲染系统实现的特性: 1. 用户态与系统态隔离。 2. 高频调用与低频调用隔离。 3. 面向用户的易用性封装。 4. 渲染数据和渲染机制分离。 5. 用户…...

Linux 环境变量 二

目录 获取环境变量的后两种方法 环境变量具有全局属性 内建命令 和环境变量相关的命令 c语言访问地址 重新理解地址 地址空间 获取环境变量的后两种方法 main函数的第三个参数 :char* env[ ] 也是一个指针数组,我们可以把它的内容打印出来看看。 …...

Beyond Compare4 30天试用到期的解决办法

相信很多小伙伴都有在使用Beyond Compare 4软件,如果我们没有激活该软件,就只有30天的评估使用期,那么过了这30天后我们怎么继续使用呢?下面小编就来为大家介绍方法。 打开Beyond Compare4,提示已经超出30天试用期限制…...

sentinel规则持久化-规则同步nacos-最标准配置

官方参考文档&#xff1a; 动态规则扩展 alibaba/Sentinel Wiki GitHub 需要修改的代码如下&#xff1a; 为了便于后续版本集成nacos&#xff0c;简单讲一下集成思路 1.更改pom 修改sentinel-datasource-nacos的范围 将 <dependency><groupId>com.alibaba.c…...

【Linux】tail命令使用

tail 命令可用于查看文件的内容&#xff0c;有一个常用的参数 -f 常用于查阅正在改变的日志文件。 语法 tail [参数] [文件] tail命令 -Linux手册页 著者 由保罗鲁宾、大卫麦肯齐、伊恩兰斯泰勒和吉姆梅耶林撰写。 命令选项及作用 执行令 tail --help 执行命令结果 参…...

【数据结构】面试OJ题——时间复杂度2

目录 一&#xff1a;移除元素 思路&#xff1a; 二&#xff1a;删除有序数组中的重复项 思路&#xff1a; 三&#xff1a;合并两个有序数组 思路1&#xff1a; 什么&#xff1f;你不知道qsort&#xff08;&#xff09; 思路2&#xff1a; 一&#xff1a;移除元素 27. 移…...

LibreOffice编辑excel文档如何在单元格中输入手动换行符

用WPS编辑excel文档的时候&#xff0c;要在单元格中输入手动换行符&#xff0c;可以先按住Alt键&#xff0c;然后回车。 而用LibreOffice编辑excel文档&#xff0c;要在单元格中输入手动换行符&#xff0c;可以先按住Ctrl键&#xff0c;然后回车。例如&#xff1a;...

ideaSSM在线商务管理系统VS开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点 SSM 在线商务管理系统是一套完善的信息管理系统&#xff0c;结合SSM框架和bootstrap完成本系统&#xff0c;对理解JSP java编程开发语言有帮助系统采用SSM框架&#xff08;MVC模式开发&#xff09;&#xff0c;系统具有完整的源代码 和数据库&#xff0c;系统主…...

数据结构 | 顺序表专题

数据结构 | 顺序表专题 文章目录 数据结构 | 顺序表专题课前准备1. 目标2. 需要的储备知识3. 数据结构相关概念 开始顺序表1、顺序表的概念及结构2、顺序表分类3、动态顺序表的实现初始化顺序表打印顺序表内存容量的检查顺序表的尾插顺序表的尾删顺序表的头插顺序表的头删在顺序…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波&#xff1a;可以用来解决所提出的地质任务的波&#xff1b;干扰波&#xff1a;所有妨碍辨认、追踪有效波的其他波。 地震勘探中&#xff0c;有效波和干扰波是相对的。例如&#xff0c;在反射波…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)

本文把滑坡位移序列拆开、筛优质因子&#xff0c;再用 CNN-BiLSTM-Attention 来动态预测每个子序列&#xff0c;最后重构出总位移&#xff0c;预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵&#xff08;S…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

html-<abbr> 缩写或首字母缩略词

定义与作用 <abbr> 标签用于表示缩写或首字母缩略词&#xff0c;它可以帮助用户更好地理解缩写的含义&#xff0c;尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时&#xff0c;会显示一个提示框。 示例&#x…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

MySQL账号权限管理指南:安全创建账户与精细授权技巧

在MySQL数据库管理中&#xff0c;合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号&#xff1f; 最小权限原则&#xf…...

MySQL JOIN 表过多的优化思路

当 MySQL 查询涉及大量表 JOIN 时&#xff0c;性能会显著下降。以下是优化思路和简易实现方法&#xff1a; 一、核心优化思路 减少 JOIN 数量 数据冗余&#xff1a;添加必要的冗余字段&#xff08;如订单表直接存储用户名&#xff09;合并表&#xff1a;将频繁关联的小表合并成…...

iview框架主题色的应用

1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题&#xff0c;无需引入&#xff0c;直接可…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...