cdn:content delivery network
大型网站都会使用这种技术,通过遍布在全球各个物理节点服务器来缓存源网站的静态文件,达到客户端可以根据逻辑上就近的cdn节点获取静态文件。
例如:
双11期间,天猫提供优惠券,全球人民在各自的不同物理位置点击链接下载优惠券,阿里通过CDN技术将源站服务器的静态文件(图片等)缓存到全球各个地区的节点服务器,这样每个用户从就近的服务器节点下载图片,不会影响带宽,实现高吞吐,高稳定性能。
各大云计算厂商都有cdn服务,在下试了下Azure CDN,个人心得如下。
你需要提供一个自定义的域名:一般是二级或者三级(比如image.contoso.com)这是你需要做CDN的web网站,顶级域名肯定是备案过的(比如contoso.com),所以不用备案了,查到你的备案号填进去。
Azure会提供CDN Cname 域名:一般是 你的自定义域名+.mschcdn.com,你需要到域名管理器处把 你的自定义域名做条CName到 CDN Cname 的域名,这样 客户端访问你的image.contoso.com时,Azure CDN会按逻辑判断就近为你从节点服务器下载文件到客户端。
这里涉及到CDN击中和回源两种情况,如果节点服务器有被访问的文件,判为击中,直接返回给客户端,否则回源到你的真实服务器ip下载文件。