就比如一个简单的页面访问,加了cdn会怎么样,不加又会怎么样
假设你的服务器在海南,如果你不用cdn的话,那全国用户访问你的应用都会从你海南服务器下载这份js文件,这对服务器压力和用户下载速度都有影响,而用了cdn之后,用户访问的时候会从就近的节点下载,由于cdn服务商基本都有遍布全国的节点,所以一个新疆用户访问的时候,很可能js就在就近的乌鲁木齐节点下载了.这样1降低了你的服务器压力,2提高了用户访问速度间接提高了用户体验
CDN
主要目的在于优化网络传输过程中可能出现的影响网络稳定性的阻塞或瓶颈等问题。
举个简单的例子,通常情况下我们从广州访问北京的线路是:广州 - 上海 - 北京
,但这条线路有时候会因为访问人数较多或者被老鼠啃坏等原因出现故障。而通过CDN
,我们可以搭建一条辅助线路:广州 - 西安 - 北京
,在广上北
这条线路出现问题或者阻塞堵车的时候有一条备用的线路可以走,这样就能很好的为用户提供稳定的服务了。
更有甚者,我们还可以把一些静态资源(不会轻易修改的图片、CSS样式等)直接放在西安
、上海
的服务器上,这样访问速度又可以上一个台阶。
你有一个网站,放在自己的服务器上给用户浏览,如果你的服务器在北京,而用户可能在全国甚至全世界各地,那么广州的用户可能会觉得网站慢,美国的用户可能会觉得网站非常慢。
然后你用了CDN技术(购买现有的CDN服务或者自己搭建),同样你的服务器还是在北京,但是用户访问的话并不是直接访问你的服务器,而是访问CDN服务器。北京的用户访问的北京CDN服务器,美国用户访问美国的CDN服务器,CDN服务器首次会缓存你自己服务器上的内容。
要通俗嘛,你们都太多专业术语啦,放着我来。
故事的主人公叫小明,住在北京。
今天小明在某猫剁手买了件衣服,卖家在广东,于是等呀等呀等快递,等到一个好快递,在下单后的第 4 天,他拿到了自己心爱的衣服。
后来小明在某东上买了本书,由于某东在全国各地都有仓储和备货,于是货物直接从北京发出,小明当天就拿到书啦。
那,CDN 呢,简单说用了就是上面的买书,没用就是上面的买衣服。
啦啦啦,啦啦啦,我是会讲故事的小猪 >.<