美文网首页
淘宝页面的性能优化

淘宝页面的性能优化

作者: Bookish倩宝 | 来源:发表于2016-09-30 09:30 被阅读0次

挑战:

数据来源多
串行请求渲染模块
运营数据和个性化数据
数据兜底容灾

影响首页性能的因素

1 依赖过多
数据请求分为:静态资源,CDN缓存加速静态资源,后端接口
2 无法直接输出首屏数据
3 模块过多
4 图片过多,翻页往下滚动

网页性能衡量指标

1 FPS 屏幕刷新率为60fps,当页面元素动画、滚动或者渐变时绘制速率小于 60,就会不流畅,小于 24 就会卡顿,小于 12 基本认定卡爆了。
2 DOMContentLoaded 和 Load
DOM 加载并且解析完成才会触发 DOMContentLoaded 事件。DOM过多或者嵌套过深,时间回较长
3 流畅度
流畅度是对 FPS 的视觉反馈,FPS 值越高,视觉呈现越流畅。为了保障页面的加载速度,很多内容不会在页面打开的时候全部加载到客户端。

淘宝首页的性能优化

1 关键模块优先,懒加载
其他模块加载时间
(1)当页面中触发mousemove scroll mousedown touchstart touchmove keydown resize onload这些事件的时候,说明用户开始与页面交互了,程序必须开始加载。
(2)设定了一个超时加载,5s 之后,不论页面加载情况如何,都会将剩下的非关键模块加入到懒加载监控
2 懒执行,有交互才执行
3 更懒的执行,刷新页面才执行
4 图片尺寸的控制和懒加载
5 低频修改模块,缓存请求
有一些模块数据是很少被修改的,比如接口的兜底数据、阿里 APP 模块数据等,可以通过调整参数,设置模块的缓存时间

优化的思考角度

首屏一定要快
滚屏一定要流畅
能不加载的先别加载
能不执行的先别执行
渐进展现、圆滑展现

(function() {
  var lastTime = 0;
  var vendors = ['ms', 'moz', 'webkit', 'o'];
  for(var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {
    window.requestAnimationFrame = window[vendors[x]+'RequestAnimationFrame'];
    window.cancelAnimationFrame = window[vendors[x]+'CancelAnimationFrame'] || window[vendors[x]+'CancelRequestAnimationFrame'];
  }
  if (!window.requestAnimationFrame) {
    window.requestAnimationFrame = function(callback, element) {
      var currTime = new Date().getTime();
      var timeToCall = Math.max(0, 16 - (currTime - lastTime));
      var id = window.setTimeout(function() { callback(currTime + timeToCall); }, timeToCall);
      lastTime = currTime + timeToCall;
      return id;
    };
  }
  if (!window.cancelAnimationFrame) {
    window.cancelAnimationFrame = function(id) {
      clearTimeout(id);
    };
  }
})();

相关文章

  • 淘宝美工兼职如何优化详情页

    淘宝美工兼职如何优化详情页?很多淘宝美工兼职很想去把详情页优化好,但是优化这个也是必须建立在淘宝允许的规则下面的,...

  • 淘宝页面的性能优化

    挑战: 数据来源多串行请求渲染模块运营数据和个性化数据数据兜底容灾 影响首页性能的因素 1 依赖过多数据请求分为:...

  • 冷启动优化

    冷启动优化主要优化两个方面 Application 性能优化 App启动页性能优化业务优化不在本章优化范围内。本章...

  • 前端面试必问及加分点---性能优化篇

    如何进行网站性能优化 你有用过哪些前端性能优化的方法? 谈谈性能优化问题 代码层面的优化 前端性能优化最佳实践

  • iOS 面试 - 项目优化

    淘宝下拉加载更多如何优化 TableView的性能优化 1、通过正确的设置 reuseIdentifier 来重用...

  • iOS网络优化

    (1)博客 a,阿里无线11.11:手机淘宝 521 性能优化项目揭秘 阿里无线11.11:手机淘宝移动端接入...

  • H5性能优化

    移动端HTML5页面前端性能优化。如何优化HTML5在移动设置上的性能表现,首先需要明确以下几个原则:1、PC优化...

  • 2018最新 Android 面试题总结(三)

    Q:项目中如何做性能优化的? 举例说明项目注意了哪些方面的性能优化,如布局优化、绘制优化、内存泄漏优化、 响应速度...

  • 如何优化产品详情页?

    为什么要优化详情页? 购物体验:淘宝不同于实体,实体能直观感受产品质量,消费者在淘宝只能通过详情页来感受产品,优化...

  • Android性能优化以及一些性能优化工具

    前言 Android性能优化是很重要的一件事情,只有做好的性能方面的优化,用户体验满意度才会有所提升,而且性能优化...

网友评论

      本文标题:淘宝页面的性能优化

      本文链接:https://www.haomeiwen.com/subject/jfmlyttx.html