带你了解MIP页面的加速原理!

带你了解MIP页面的加速原理!

 

MIP是百度移动网页加速器

最近很多朋友都在为

自己的移动站进行MIP改造

究竟MIP是如何做到

秒开的移动网页?

赶紧来了解一下吧~

 
经过精心设计的JavaScript

   为了去除臃肿的客户端脚本,MIP 文件不允许自定义 JavaScript 。对一些强依赖 JavaScript 的功能(如:广告、统计和交互),MIP 提供与 MIP Runtime 兼容封装好的组件来实现。

    JavaScript 引用原则:

  • 目前 MIP 不允许用户自定义 JavaScript ,需要用 MIP 组件的形式引进来,从而确保安全性和性能表现。
  • 可以引用<mip-iframe>组件 来引入实现部分富交互的功能。这样,即使开发时使用最影响性能的document.write(),也不会影响主页面的渲染。
  • MIP 组件是开源的,允许开发者自定义功能组件,项目也将持续提供多样的组件,以适应不同的需求。

 

 

所有静态资源需要标明尺寸

 

 

   在页面开发时,资源常常不会被设定宽高,特别是使用广告或者通过调用 document.write() 注入的时候。由于资源大小不能确定,页面经常要进行反复重新的绘制。

   现在,MIP 要求将所有的资源(广告、图片、音频和视频)标明尺寸。当资源真正加载时,所有资源大小可以被立即推断出并迅速的用于计算页面布局,加载中的资源将无缝呈现,不必因为页面频繁更新布局而影响到用户的阅读体验。

不允许任何机制阻止页面渲染

 

 

   开发者的任何自定义脚本,都需要用 MIP 的标题反馈给 MIP,例如<mip-ad><mip-iframe> 等,这些方式不会阻塞页面的 layout 和渲染。

控制外部资源加载





   MIP Runtime 会控制外部资源的按需加载来确保其高效性,从而使用户想阅读的内容尽快出现在屏幕中。

封装交互功能

   MIP 提倡网页能给用户直接简单的体验,但这并不意味着 MIP 限制了页面的生动和有趣。

   MIP Runtime 提供了高度优化的被封装的 JavaScript ,开发者无需投入过多精力去实现复杂的交互功能。

建议使用inline的CSS

 

 

   CSS 的加载,会阻止页面的渲染,CSS 内联可以减少客户端的开销。

 

只允许GPU加速的动画
 

 

   MIP 只允许用 transforms 和 opacity 来完成动画效果,当动画能在 GPU 上执行时,仅触发渲染层合并。

 

MIP缓存

 

 

   MIP 另一个重要的意义在于能够帮站长加速网页,MIP-Cache 将会把 MIP 网页缓存到百度 CDN 中。只要符合 MIP 标准,都可以使用 MIP 缓存。

开放且持续更新

 

 

   MIP 是一个开源项目,所有的标准并非一成不变。我们会持续不断进行优化,期待您的共同参与!

 

关注互联网创业 干货|工具|教程|资源
木木资源博客 » 带你了解MIP页面的加速原理!

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

提供最优质的资源集合

大学生必备 职场必备