WPJAM Basic「CDN 加速」功能背后原理:对象存储的镜像回源功能详细介绍

WPJAM Basic 插件中一个很重要的功能就是:「CDN 加速」,我已经写了详细的使用介绍文章,但是还是很多同学不会,总是设置不对,甚至还因此诋毁插件;

其实这些问题归根结底还是没有真正理解「CDN 加速」功能背后的原理,就是对象存储的镜像回源功能,那么下面就详细介绍下什么是对象存储的镜像回源功能,以及使用对象存储镜像回源功能的时候应该注意的地方;

什么是对象存储的回源功能

对象存储的镜像回源功能是指,当网站的用户请求的资源不存在的时候,可以通过回源规则从设定的源地址获取到正确的数据,然后再返回给网站的用户

博客上的图片,CSS,JS 这些静态文件一般都是不会经常修改的,使用镜像回源功能把这些静态文件资源镜像到对象存储的服务器上,网站用户访问的时候就直接从云存储的服务器上读取数据,这样可以降低网站服务器读取数据的压力提高网站的速度

WPJAM Basic「CDN 加速」功能就是使用镜像回源功能,并且并不影响博客的原来使用体验,原来怎么上传图片还是继续在网站中怎么操作即可;

镜像回源的操作过程和原理

对于 WordPress 博客来说最方便的方法就是安装 WPJAM Basic 插件,然后参照教程一步一步操作即可;

WordPress 博客使用阿里云对象存储 OSS 进行静态资源 CDN 加速
WordPress 博客使用腾讯云对象存储 COS 进行静态资源 CDN 加速

简单说,镜像回源的操作过程和原理是这样的,以阿里云 OSS为例:

  1. 比如我博客上有一张图片:https://liboven.cn/logo.png,它的域名是 liboven.cn
  2. 在阿里云 OSS 新建一个空间,比如 wpjam,绑定一个 cdn.liboven.cn 的域名,然后设置镜像回源,“回源地址”设为 liboven.cn
  3. 现在就可以通过 http://cdn.liboven.cn/logo.png 这个地址访问到保存在博客上的那张图片了
  4. 说明:我博客上的任意一张图片,只要它的源站地址是 liboven.cn,就可以通过将它改成 cdn.liboven.cn 访问到;
  5. 每次通过 cdn.liboven.cn 访问到某张图片的时候,它就会被永久保存在阿里云 OSS 上(除非你手动把它删除),然后每次终端用户访问到的时候都会通过阿里云的 CDN 分发出去;

使用镜像回源需注意的地方

只有当对象存储上没有对应资源情况下,对象存储才会执行镜像回源,向源站请求文件;

假设文件已经通过镜像回源写到了对象存储,如果源站的相同文件发生了变化,对象存储不会更新已经存在于对象存储上的文件,因为此时文件已经在对象存储上,不符合镜像回源的条件,所以:

在源站修改了 CSS 或者 JS 文件,对象存储是不会自动更新的;

那怎么办?你可以:

  1. 上对象存储手动更新对应的文件;
  2. 更改文件名,让对象存储重新镜像一个新的文件;

镜像回源功能看起来和传统的 CDN 比较像,两种都会在数据不存在的时候回源站抓取,不同之处在于,镜像回源是存储不是缓存,故此镜像存储对每个资源来说只回源一次,后续访问的时候就不再回源了;

如果终端用户第一次访问某个资源,终端用户首先从对象存储上访问资源,再让对象存储回源站取资源,然后将取回的资源缓存在对象存储上;因此,第一次访问会有一定的延时,可能比从源站取稍微慢一点,这是正常的,但是第二次第三次访问就可以直接从对象存储上取,一般情况下比从源站取资源会快很多;

也正因为镜像存储第一次取资源时会有延时,因此不推荐镜像文件大小超过 5M 的大文件资源,否则第一次访问会很慢或者出现服务器超时等错误;

网站上的图片镜像到对象存储之后,是否可以删除服务器上的图片,答案是可以删除服务器上的图片但是强烈建议不要进行此项操作,因为现在主机空间费用非常低廉,购买一个大点的空间也花不了多少钱;另外图片多保存一份在自己的服务器上也是好的;

 

版权声明:
作者:云小叔-高级程序员
链接:https://liboven.cn/231.html
来源:微芯引擎 秒加载 快如闪电
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
海报
WPJAM Basic「CDN 加速」功能背后原理:对象存储的镜像回源功能详细介绍
WPJAM Basic 插件中一个很重要的功能就是:「CDN 加速」,我已经写了详细的使用介绍文章,但是还是
<<上一篇
下一篇>>
文章目录
关闭
目 录