七牛的镜像存储介绍和其原理

有些同学使用七牛镜像存储 WordPress 插件的,总是设置不对,其实这些问题归根结底还是没有真正理解镜像存储的,那么下面就详细介绍下什么事镜像储存,以及使用七牛镜像存储的时候应该注意的地方。

什么是七牛的镜像存储

镜像存储是指你网站的数据在存储在自己服务器上的情况下,额外使用七牛云存储作为镜像服务器,让网站的用户每次访问的时候都从七牛云存储上读取。如果七牛云存储上没有用户需要读取的数据,则七牛的服务器会从源站拉取资源,然后再返回给网站的用户。

网站上的图片,CSS,JS 这些文件一般都是不太修改,使用镜像存储把这些静态文件资源镜像到七牛的服务器,网站用户访问的时候就直接从七牛的服务器上读取数据,这样可以大大降低网站服务器读取数据的压力大大提高网站的速度,并且并不影响博客的原来使用体验,原来怎么上传图片还是继续在网站中怎么操作即可。

七牛镜像存储的操作过程和原理

对于 WordPress 博客来说最方便的方法就是安装我写的七牛镜像存储 WordPress 插件,然后参照七牛镜像存储 WordPress 插件的使用说明一步一步操作即可。

简单说,镜像存储的操作过程和原理是这样的:

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

使用镜像存储需注意的地方

七牛的镜像存储看起来和传统的 CDN 比较像,两种都会在加速节点数据不存在的时候回源站抓取。不同之处在于,镜像存储是存储(和普通的存储没什么不同,镜像功能只是存储的一个特性),不是缓存,故此镜像存储对每个资源来说只回源一次,后续访问的时候就不再回源了。所以源站的数据发生变化的时候,你需要主动去删除镜像存储里面的文件(七牛镜像存储 WordPress 插件提供的更新文件功能就是该实现这个目的),从而达到强制刷新的目的。

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

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

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

标签:

热门文章