参考:
https://developer.qiniu.com/kodo/8622/dev-the-binding-source-domain-name
——————————–
可以说,从图床的角度和云对象存储的角度来看“自定义 CDN 加速域名” 与 “自定义源站域名”的应用场景是相同的。
给出应用场景的例子:(引自:https://developer.qiniu.com/kodo/8622/dev-the-binding-source-domain-name)
说直白些就是把原网站中的图片或资源保存到云对象存储空间中,比如http://img.devilmaycry812839668.top/xxx.jpg是原网站中的一个图片,由于原网站是一个图片网站,图片太多,我们需要把这些图片保存到第三方的云对象存储空间中,以来节省自身的存储空间并提高这些图片的访问速度。这时候我们可以在云对象存储服务商(这里的例子为七牛云)那里开设一个存储空间,把原网站中的图片存放到这个云对象存储空间中;我们通过“自定义 CDN 加速域名” 与 “自定义源站域名”的方式为这些存放在云对象存储服务商空间下的图片绑定一个外部链接,然后通过对外部链接的访问就可以获得到云对象存储空间中的这些图片;云对象存储商根据具体的外部链接的请求来发送选中的图片,而这个外部链接是根据原网站的域名进行CNAME转换为云对象存储商的域名后获得的。这里假设把原网站域名img.devilmaycry812839668.top通过CNAME方式解析为iovip-as0.qiniuio.com,而iovip-as0.qiniuio.com域名的IP地址为45.43.48.195,那么访问原网站图片链接http://img.devilmaycry812839668.top/xxx.jpg就会被发送到IP地址为45.43.48.195的主机上,该主机对http请求中的资源定位地址img.devilmaycry812839668.top/xxx.jpg来进行解析以来获得云对象存储空间下的图片并返回。
“自定义 CDN 加速域名” 与 “自定义源站域名”的设置都是为实现通过将原网站的资源映射并存储到云对象存储空间上,来将对原网站资源的访问转换为对云对象存储空间上对象的访问,不同的是云对象存储商对这个资源的具体存储服务器的不同。
“自定义 CDN 加速域名”
虽然都是将资源存放在对象存储商的空间下,但是“自定义 CDN 加速域名” 方式会将资源通过CDN同步的方式同步到不同物理位置的服务器上以实现CDN的目的。这个时候对原网站资源的访问会由DNS服务器的CNAME解析为链路最近的CDN服务器来进行提供,这样就实现了不同地区对同一资源的访问可以根据请求方的物理地址来选择距离最近的CDN服务器来服务。
“自定义源站域名”与“自定义 CDN 加速域名”的不同在于云对象存储商不会对该资源进行CDN存储,也就是不会分发到不同的物理节点的服务器上,而是用单一服务器来进行提供服务。但是经过测试发现,二者最终都会进行分布式存储,只不过“自定义 CDN 加速域名”方式中使用多个不同物理节点的服务器来与主服务器进行CDN同步,而 “自定义源站域名”会将资源完全存储到多个服务器上并且不会和主服务器进行CDN同步;还有一点不同,就是 “自定义源站域名”方式将资源存储到物理位置相近的多个服务器上(IP相连,同个机房),而“自定义 CDN 加速域名”方式使用CDN方式存储到不同地域不同链路上的服务器中。
例子:
“自定义 CDN 加速域名”:将资源存储到2个物理位置分开的子网络中:
“自定义源站域名”:将资源存储到同个网段的多台服务器上(一个机房,同一物理位置):
——————————