前言
由于配置Picgo
的时候需要搭建CDN加速或者镜像访问(推荐),因此秉持好奇心记录一下
参考
本笔记有以下几篇参考文章,分别如下:
镜像
什么是镜像
它和主站并没有太大差别,或者可算是为主站作的后备措施。有了镜像网站的好处是:如果不能对主站作正常访问(如某个服务器死掉或出了意外),但仍能通过其它服务器正常浏览。相对来说主站在速度等各方面比镜像站点略胜一筹。
最常见的当属镜像站点(Mirror Sites)。通过复制网站或网页的内容并分配以不同域名和服务器,以此欺骗搜索引擎对同一站点或同一页面进行多次索引。大多数搜索引擎都提供有能够检测镜象站点的适当的过滤系统,一旦发觉镜像站点,则源站点和镜像站点都会被从索引数据库中删除。
建立镜像网站的目的
1、保存网页信息,特别是在一个网站面临关站的时候。
2、提高用户在某个地区的下载速度。譬如一个美国网站的中国镜像可以使来自中国的用户直接从这个中国的镜像访问,从而加快了速度。这可以看作是一种全球范围的缓存。
3、保存历史性的数据、信息,防止丢失。
4、平衡网站的流量负载。例如,一个Linux 的发行版的ISO镜像文件的大量下载可能会导致主站过荷而下线,而镜像站点则可以在多个服务器分担流量,从而保证站点的持续在线。
5、对因流量激增而下线的站点提供临时的访问。
6、便于不同地区或不同ISP(如中国电信和中国联通的互访问题)的人获得更快的访问速度。
创建镜像站点通常是由于网络带宽限制、封锁或是其他原因,导致无法实现对主站点的正常访问。这时通过将主站点的信息资源移植转移到相对容易访问的本地服务器,以提高用户的访问效率。常见于内部网、校园网或是其他有较大存储设备的服务器。通过镜像站点,也可以实现多目标多线程的快速下载。例如Get Smart和Get Right正是使用了这种高级的多线程下载技术。像站点是通过主服务器增加转移存储地址来实现信息的异地备份。通常一个镜像会定期访问主网站,以更新其内容。镜像也有分一级、二级等等。二级镜像是指那些通过访问一级镜像网站来更新内容的网站,通常更新速度不如一级镜像,但不会给主网站增加负担。
更新方式
通过主服务器增加转移存储地址来实现信息的异地备份。 更新镜像最常用的软件是rsync,有时候也直接用http镜像工具。
CDN
什么是CDN
CDN是将源站内容分发至全国所有的节点,从而缩短用户查看对象的延迟,提高用户访问网站的响应速度与网站的可用性的技术。它能够有效解决网络带宽小、用户访问量大、网点分布不均等问题。
CDN 其实是 Content Delivery Network 的缩写,即“内容分发网络”
源站内容(image、html、js、css等) 这个属于内容分发
CDN 诞生于二十多年前,随着骨干网压力的逐渐增大,以及长传需求的逐渐增多,使得骨干网的压力越来越大,长传效果越来越差。于是在 1995 年,MIT 的应用数学教授 Tom Leighton 带领着研究生 Danny Lewin 和其他几位顶级研究人员一起尝试用数学问题解决网络拥堵问题。
为什么需要CDN
当下的互联网应用都包含大量的静态内容,但静态内容以及一些准动态内容又是最耗费带宽的,特别是针对全国甚至全世界的大型网站,如果这些请求都指向主站的服务器的话,不仅是主站服务器受不了,单端口500M左右的带宽也扛不住,所以大多数网站都需要CDN服务。
根本上的原因是,访问速度对互联网应用的用户体验、口碑、甚至说直接的营收都有巨大的影响,任何的企业都渴望自己站点有更快的访问速度。而HTTP传输时延对web的访问速度的影响很大,在绝大多数情况下是起决定性作用的,这是由TCP/IP协议的一些特点决定的。物理层上的原因是光速有限、信道有限,协议上的原因有丢包、慢启动、拥塞控制等。
这就是你使用CDN的第一个也是最重要的原因:为了加速网站的访问。
除了加速网站的访问之外,CDN还有一些作用:
- 为了实现跨运营商、跨地域的全网覆盖
互联不互通、区域ISP地域局限、出口带宽受限制等种种因素都造成了网站的区域性无法访问。CDN加速可以覆盖全球的线路,通过和运营商合作,部署IDC资源,在全国骨干节点商,合理部署CDN边缘分发存储节点,充分利用带宽资源,平衡源站流量。阿里云在国内有500+节点,海外300+节点,覆盖主流国家和地区不是问题,可以确保CDN服务的稳定和快速。
- 为了保障你的网站安全
CDN的负载均衡和分布式存储技术,可以加强网站的可靠性,相当无无形中给你的网站添加了一把保护伞,应对绝大部分的互联网攻击事件。防攻击系统也能避免网站遭到恶意攻击。
- 为了异地备援
当某个服务器发生意外故障时,系统将会调用其他临近的健康服务器节点进行服务,进而提供接近100%的可靠性,这就让你的网站可以做到永不宕机。
- 为了节约成本
投入使用CDN加速可以实现网站的全国铺设,你根据不用考虑购买服务器与后续的托管运维,服务器之间镜像同步,也不用为了管理维护技术人员而烦恼,节省了人力、精力和财力。
- 为了让你更专注业务本身
CDN加速厂商一般都会提供一站式服务,业务不仅限于CDN,还有配套的云存储、大数据服务、视频云服务等,而且一般会提供7x24运维监控支持,保证网络随时畅通,你可以放心使用。并且将更多的精力投入到发展自身的核心业务之上。
两者区别
CDN 对用户完全透明,不需要用户手动选择需要访问的镜像站点;
CDN 对节点有健康性检查,而镜像则没有,因此CDN 可靠性更高;
CDN 的内容同步机制不需要人工的干预,而镜像站点需要一套复杂的系统来实现内容同步;镜像站点的系统复杂,维护工作量大,对运维工作有很大的压力;
CDN 部署便捷不需要对源站做改动,很短的时间内就可以采用并产生显著的效果;
CDN 节点分布广、带宽扩充快,镜像站点很难做到同样的覆盖范围及带宽快速扩充。