CDN如何为移动端加速?
网友解答: 感谢邀请。 首先简单说下CDN的工作原理: CDN是将网站内容分发到不同地区的节点上,通过此方式来缩短访问者主机与储存网站内容的主机之间的距离,也包括解决不同运营商线
感谢邀请。
首先简单说下CDN的工作原理:
CDN是将网站内容分发到不同地区的节点上,通过此方式来缩短访问者主机与储存网站内容的主机之间的距离,也包括解决不同运营商线路所导致的访问速度降低的尴尬问题。CDN具有实时可扩展性和最小化网络延迟的能力。这意味着用户在尽可能短的时间内收到数据,最小的数据包丢失,资源以最佳方式耗费。
现在4G已经非常普及, 延迟一般是在20-40ms,而CDN的缓存服务器不可能部署在基站到手机之间,影响移动端用户延迟时间的原因主要如下:
1. 连接建立需要时间,(特别是多个连接的时候); 2. 发送请求需要时间; 3. 等待响应时间 ; 4. 下载内容需要时间; 5. 解析(rendering)内容需要时间。 CDN是如何解决这些问题的呢?①缓存优化
针对cache 优化,比如expire header之类。如果内容在客户端cache了就不需要网络访问的时间了,这个是传统cdn就很重视的技术 ;
②网络优化
CDN 更改内容,将小文件内容 inline ,比如将一些 js 脚本从独立文件改为直接放到 html 中间去,这下省了好几个包往返;
③内容优化
通过对html、js优化和图片优化,改善下载时间。 图片压缩(比如webP等更高压缩率的图片压缩方式等),图片文件尺寸相对较大,在不影响质量的情况下压缩个30-60%可以获得很好的效果。而CDN可以识别手机设备和浏览器的特性,来获得更高的压缩效果。
总结一下CDN起到的作用: 1、无线应用全链路加速,主要域名解析和业务访问,缩短主机之间访问时信息传递的距离,达到加速效果; 2、通过智能解析,源站、CDN节点精确调度,HTTP DNS 提升调度精确度,分发至不同线路的节点后可以让不同线路的访问者在访问时提升实际的响应速度; 3、分发后的不同节点IP地址不同,而且会自然的隐藏掉源寄存主机的真实IP,这样可以防止一些恶意攻击,达到安全保护效果。有兴趣的小伙伴可以私聊,深入交流!