google amp 是什么鬼?
谷歌AMP(Accelerated Mobile Pages,加速移动页面)是Google推出法人一种为静态内容构建 web 页面,提供可靠和快速的渲染,加快页面加载的时间,特别是在移动 Web 端查看内容的时间。
AMP HTML 完全是基于现有 web 技术构建的,通过限制一些 HTML,CSS 和 JavaScript 部分来提供可靠的性能。这些限制是通过 AMP HTML 一个验证器强制执行的。为了弥补这些限制,AMP HTML 定义了一系列超出基础 HTML 的自定义元素来丰富内容。
从技术方面来说,采用 AMP 技术的网页之所以可以打开的这么快,这主要得益于它剔除了网页代码中各种可能会拖慢速度的部分,比如第三方的脚本文件、一些 HTML 标签、广告追踪器等等。
通过以上Google AMP动态效果图的演示,大家应该都知道了,如果你知道百度MIP,那么你一定或多或少听过谷歌AMP,毕竟百度MIP是国内版的AMP,而随着国内两大搜索引擎百度和搜狗加入Google AMP开源计划,相信很快Google AMP也将走进大家的视野。
AMP的目的
AMP的目的是极大的提高mobile网页的加载速度,从而更利于访问者的浏览体验。根据Google的统计,在移动端如果一个页面3秒钟还没有完成加载,那么有90%以上的访问者会关掉网页或者访问其他网页。因此,加载时间是一个获取有效流量非常重要的因此。但是,目前的网页技术并不能满足3秒完成加载这个黄金时间节点,Google端的数据显示目前mobile页面的平均加载时间为8秒!这意味着绝大对数网站90%以上的有效流量全部流失了!。问了能让大多数页面获得尽可能更快的mobile页面加载速度,AMP项目营运而生。
值得一提的是AMP项目最初由Google发起,但是很快得到了很多网站的相应,逐渐演变整一个在自然搜索方面影响蛮大的发展趋势。目前华尔街时报,纽约时报,BBC等大型新闻网站都开始采用AMP技术进行Mobile网页加速。
AMP的工作原理
AMP的工作原理简单的可以总结为: 代码减负+缓存预加载
网站端:完全按照AMP的规则书写网站页面的HTML代码,这极大的去掉了冗余代码的加载负担
网站端:遵照Google AMP规则调用JS和CSS,减轻了组件的加载负担
Google端:当页面信息完全遵照AMP规则写好后,提交给Google DNS,Google DNS会把这些AMP页面信息缓存在自己的Cache服务器中(注意:是Google自己的DNS cache服务器中)
用户端:当用户在搜索引擎中搜索到一个AMP网页,并点击的时候,Google会首先调用DNS cache服务器中缓存的数据展现给访问者,从而让访问者第一时间看到自己想看到的信息.
这样AMP页面通过页面减负和缓存预加载的方法实现了mobile页面加载速度的极大改进,据Google的数据显示,能够提高四倍的加载速度!也就是说一个页面原来用8秒加载,AMP优化之后,只需要2秒的加载时间!这可以说是极大的改进!
AMP的组成
AMP(accelerated mobile page)在内容上由3部分组成:
AMP HTMLAMP JSGoogle AMP Cache
AMP HTML
所谓AMP HTML其实是Google对于HTML代码和标签的一套新的使用规范,它大部分继承了通用的HTML tag的使用方法,但是也有自己发明的一部分新的HTML tag的使用方法.
AMP JS
AMP JS和AMP HTML其实是相同的思路,规范了AMP页面的JS和CSS的使用方法.
Google AMP Cache
这个大家也可以自己了解下,非技术人员没太大必要知道.