全球内容交付网络(CDN)服务领头羊Akamai近日公布的《互联网状况》指出,2015年第4季度全球平均网速为5.6Mbps,同比增长23%环比增长8.6%。宽带发展联盟发布的第11期《中国宽带速率状况报告》显示,2016年第1季度我国固定宽带网络下载速率达到9.46 Mbit/s,环比提升13.4%,而且工信部表示将继续提速年底之前希望平均接入速度达到30M。
在网络不断提速的大背景下,日常生活中我们依然不时发出「网络太慢了」这样的感慨。自然这里指的「慢」并非是拨号时代需要等待数分钟时间才能完成网页加载的「慢」,而是哪怕拥有高速网络接入,页面载入在感官体验上依然存在延迟--在移动设备上表现的尤为明显。根据 Google的内部研究这对于互联网商家来说是极其不利的,哪怕一丝的延迟都能导致客户流失。
马修·普林斯(Matthew Prince)和他的初创公司 Cloudflare 已经找到了解决问题的方法。Cloudflare提供的一项服务是通过在自家服务器上缓存页面来改善网站的速度和安全,避免网站受到黑客攻击的同时也尽可能的为合法用户带来更快的页面载入。现在,为了让网站加载更快,Cloudflare正部署推出基于HTTP 2.0网页标准的服务器推送(Server Push),普林斯表示相比较传统的客户端请求(Client Pull)来说这能够让页面载入时间缩短1秒。
也许这缩短的1秒时间听上去并不是很多,但根据Google的研究,哪怕五分之一秒的延迟都能减少用户愿意消耗在网站上的浏览时间。一个网页应用让你感觉像是本地应用一样流畅还是延迟的无法使用,这两种使用体验之间的差别其实只有数百毫秒。因此普林斯认为服务器推送必然会带来巨大的差异体验,HTTP 2.0能够让开发者在网络上实现此前认为不可能的事情。
他说道:「服务器推送是解锁网页应用新篇章的钥匙。我们希望把这把钥匙交到开发者手中并共同见证会创造出什么样的精彩未来。」
小推送大不同
让我们感觉网页载入依然很慢的原因之一是尽管自拨号时代以来带宽不断增加,但与此同时页面也变得的更大更复杂。高分辨率图片、动画特效、视频、广告、分析脚本都是导致变慢的罪魁祸首。网络已经变得非常臃肿,现在的平均网页容量几乎等同于初代《毁灭战士》游戏大小。
导致网站变慢的原因并非仅仅只是网页体积。事实上在打开网页的过程中,下载每个独立元素都需要你的网页浏览器向托管网站的服务器发出独立的请求。如果其中任何一个请求出现Stalled(阻塞)状态,自然就会影响整个页面的加载,更有可能导致页面显示不正确。
尽管裁切掉这部分的请求或许有些帮助,但对于那些注重图片或者交互功能的网站来说依然需要处理大量的服务器响应。这也意味着网页浏览器同样需要在不受阻碍的方式下使用更好的方式来请求所有元素。
这也是HTTP标准继任者--HTTP 2.0尝试改变的地方。HTTP 2.0中新增的数项功能能够更快更高效的下载和显示网页,例如能够在一个报文(或者HTTP响应)中包含多项数据项。
服务器推送是今后Cloudflare公司大力推进的标准,也是公司产品的主打功能。它能够让网页服务器告诉网页浏览器需要在前期页面中所涵盖的所有不同元素,而不再需要现在一样按照顺序载入网页内容。
让网页多任务
普林斯以本地银行网站为例进一步说明。当你登陆的时候,银行网站在生成页面并发送到你的网页浏览器之前必须请求一个关于近期交易清单并计算你银行存款余额的列表,只有当你的浏览器获得页面之后才会进一步请求例如银行LOGO和表格样式等其他元素,并告诉浏览器如何格式化网页。而在部署服务器推送之后,银行网站就可以在计算账户余额的时候发送LOGO和表格样式。
包括Google Chrome和Mozilla Firefox在内的部分浏览器都已经支持HTTP 2.0。很多其他网页浏览器也已经支持它的前身--Google的SPDY(发音和Speed相同)协议。不过现在的问题是只有少量的网页真的支持HTTP 2.0。普林斯表示,网站在部署服务器推送方面进程非常缓慢。
自今天开始,Cloudflare的客户已经开始在网站上部署服务器推送,哪怕他们自己的服务器或者网站主机并不支持。而伴随着这个进程不断加快,我们日常访问的网站可能变得更快。普林斯表示目前已经有超过200万家网站使用Cloudflare所提供的服务,这其中包括全球顶级网站前100万家中的7%。从理论上来说,Cloudflare能够让客户更充分发挥服务器推送的能力,同时也为客户新增了部分工作内容。例如,WordPress用户将需要安装服务器推送插件以便充分利用这项功能。
普林斯表示该项目的真正意义是,将这把利器交到早期适配者的手中,从而让网页应用翻开新的篇章,尤其是在手机领域。让网页更像一款本地应用样流畅使用,为互联网的未来带来更美好的前景。
本文来源:不详 作者:佚名