cdn加速
什么是cdn
cdn的全称是 COntent Delivery Network 即内容分发网络
尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和缓解 使内容传输的更快更稳定
在网络各处防止节点服务器所构成的在现有的互联网基础之上的一层只能虚拟网络
真实服务器的镜像
cdn系统能够实时地根据网络流量和各节点的链接,负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上
使用cdn的优势
本地cache加速,提高了企业站点(尤其含有大量图片和静态页面站点)的访问速度
跨运营商的网络加速,保证不同网络的用户都得到良好的访问质量
远程访问用户根据 dns负载均衡技术智能自动选择 cache服务器
自动生成服务器的远程 mirror(镜像) cache服务器,远程用户访问时从cache服务器上读取数据,减少远程访问的带宽,分担网络流量,减轻原站点 web服务器负载等功能
广泛分布的cdn节点加上节点之间的只能冗余机制 可以有效的预防黑客入侵
cdn的工作原理
传统访问
用户在浏览器输入域名发起请求-》解析域名获取服务器ip地址-》根据ip地址找到对应的服务器-》服务器响应并返回数据
cdn访问
用户发起请求-》只能dns的解析(根据ip判断地理位置,接入网类型,选择路由最短和负载最轻的服务器)-》取得缓存服务器ip->把内容返给用户(如果缓存中有)-》向源站发起请求-》将结果返回给用户-》将结果存入缓存服务器
lvs 反向代理 分发
cdn的适用场景
站点或者应用中大量静态资源的加速分发,例如 css js 图片和html
大文件下载
直播网站
cdn的实现
bat等都有提供cdn服务
可用 lvs做4层的负载均衡
可用 nginx varnish squid apache trafficserver做7层负载均衡和cache
使用squid反向代理,或者nginx等的反向代理