Topsummit如何进行多终端Web前端优化-腾讯任旻_第1页
Topsummit如何进行多终端Web前端优化-腾讯任旻_第2页
Topsummit如何进行多终端Web前端优化-腾讯任旻_第3页
Topsummit如何进行多终端Web前端优化-腾讯任旻_第4页
Topsummit如何进行多终端Web前端优化-腾讯任旻_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

如何进行多终端Web前端优化

QQ互联中的优化经验分享腾讯高级工程师任旻个人经历概述2004年-2005年在北京工业大学任教2005年-2009年在微软,.Net相关的技术工作2009年加入腾讯,负责开发QQ概念版2011年——今开放平台:Q+,QQ互联O’Reilly《HTML5Canvas》译者为什么要对QQ互联进行性能优化?QQ互联优化实践Web与客户端本地应用的综合优化Web前端优化中的平衡和取舍利用Webkit的新特性,突破传统优化手段尝试新技术,利用云平台提速目录QQ互联是腾讯公司通过开放QQ账户体系,帮助第三方网站、媒体、终端进行社会化营销推广的开放平台,主要包括QQ登录、分享等社交组件及OpenAPI等功能。/

什么是QQ互联?QQ互联是腾讯公司通过开放QQ账户体系,帮助第三方网站、媒体、终端进行社会化营销推广的开放平台,主要包括QQ登录、分享等社交组件及OpenAPI等功能。QQ帐号登录的认知度更高,且便于记忆什么是QQ互联?QQ互联是腾讯公司通过开放QQ账户体系,帮助第三方网站、媒体、终端进行社会化营销推广的开放平台,主要包括QQ登录、分享等社交组件及OpenAPI等功能。强关系社交平台的分享API:QQ好友、群、QQ空间、腾讯微博什么是QQ互联?QQ帐号登录的认知度更高,且便于记忆强关系社交平台的分享API:QQ好友、群、QQ空间、腾讯微博庞大的QQ在线用户群体:手机QQ日活跃用户4亿QQ互联的优势为什么性能对QQ互联如此重要?影响用户操作的成功率和转化率转化率降低是对合作伙伴的伤害:搜狐微博客户端:每天新增注册用户中,QQ用户登录超过40%“唱吧”有超过50%的用户都来自QQ帐号登录美图秀秀:每天分享至不同社交平台的照片总数中,分享到QQ空间的照片占94%使用QQ帐号登录PC手机是否安装手机QQHTML5页面SSOAndroid4.0以上1.3以下QQ互联的性能优化难点多种设备多种操作系统多种登录方法多个android的版本成本?为什么要对QQ互联进行性能优化?QQ互联优化实践目录前端优化≠优化前端登录和SSOWeb与Mobile本地应用的综合优化定向分享Web前端优化中的平衡和取舍QQ查找利用Webkit的新特性,突破传统优化手段后台综合优化尝试新技术,利用云平台提速一、QQ帐号登录优化实践登录场景PC网站、应用使用QQ帐号登录网页形式:Discuz!等网站客户端应用:金山快盘手机应用iOS、Android支持手机QQ、手机Qzone的SSO形式登录唤起系统浏览器登录优化目标减少登录时间优化注册环节加快打开速度OAuth2.0登录流程优化目标:加快用户登录速度加快页面显示速度减少用户操作时间输入帐号密码确认授权获得Token和OpenID登录成功PC端QQ登录页OAuth流程优化优化方式流程优化好处2个页面合并为1个页面,既减少了用户操作,也较少了http的请求次数。输入帐号密码

&

确认授权获得Token和OpenID登录成功代码优化登录页面

打点:记录加载时间Body之前一次,之后一次。以快速显示页面为目的:HTML由后台生成JS主要逻辑写在Body之后次要逻辑写在外部文件中不使用JS框架,用原生代码:21K→13K用CSS替代图片:28K→6K优化HTTP请求:6个→1个登录页面优化效果手机SSO登录优化手机QQ每天的活跃用户约4.4亿。智能手机覆盖率:80%+利用手机QQ登录不仅可以优化性能,还可以表面重复输入用户名、密码产品优化效果更好技术优化:正常的手Q登录界面需要加载很多东西独立的登录界面,减少App加载时间和内存占用小结:产品形态优化的效果通常比技术优化的效果要好在智能手机上要善于利用客户端资源明确优化目标,在工作量和性能上进行平衡和取舍做好“时间打点”等基础工作。二、定向分享的多终端优化定向分享=分享给QQ好友PC分享界面手机分享场景优化难点与思路难点:好友列表的数据量大600人的好友列表:头像图片思路:针对不同平台的特点减少数据量LazyLoad(延时加载)26KPC的网页优化PC端特点:网速快有键盘:拼音检索有鼠标:头像是20x20的功能全:创建临时讨论组LazyLoad的力度:一次性加在所有好友数据仅在展开分组时,加载头像头像并行加载移动端的特点和优化策略移动端特点没有键盘,无需拼音JS减少50K手指触摸头像用40x40网速慢对联系进行LazyLoad滑动时一定要流畅联系人LazyLoad策略默认显示什么?头像LazyLoad加载时机是什么?挑战首页加载ScrollEnd其他优化消息展现形式的优化App中也可以支持Gzip压缩使用了CSS3的渐变色、圆角等特性,避免使用图片,节省流量。小结划分lazyload粒度的时候要充分考虑用户场景和平台特性。在手机侧要同时考虑有app和无app的情况,建议在无app时打开H5页面,增强用户体验。比如疯狂猜图、唱吧、papa善用HTML5、CSS3新特性3、突破传统优化手段

QQ查找是PC端Hybrid项目新版采用了WebKit对于传统优化方法的思考1减少HTTP请求数把图片以DataURI的方式内联在CSS文件中结果:CSS文件变大,加载时间长,出现白屏优化:改为外联,CSS加载时间明显下降对于传统优化方法的思考2在HTML中整合前端模版目前的标配,减少HTTP请求数结果难以维护,HTML膨胀HTML底部的JS执行时间推迟优化:剥离模版51K→18K将模版预编译为JS模块,加快显示速度对于传统优化方法的思考3JS放在页面最后执行快速显示页面结果AJAX在DomReady之后,数据获取滞后,显示变慢优化在Head中即进行数据初始化内嵌100+行的JS代码Ajax请求不会阻塞页面后续的加载JS加载后可以立即显示数据对于传统优化方法的思考3(续)利用Webkit的新特性尝试WebPWebP(发音"weppy"),一种有损压缩的图形档格式,派生自图像编码格式VP8。我们使用WebP有损压缩后图片从23k压缩到只有9K,缩减达52%小结没有银弹,勇于打破传统拥抱新技术后台综合优化后台对性能起决定性作用负载均衡多通接入:电信、联通、移动(铁通)、教育就近接入容灾、备份、监控、防御……互联管理系统QQ互联登录授权流程API接口开放平台的APPInfo应用部的APPInfo应用授权信息用户授权信息迁移到云平台云主机集群控制流数据流实时热点数据关键数据(接入流程,帐号)游戏流水数据快速云通道罗盘大数据解决方案进行数据挖掘TGW负载均衡移动端PC端CMEM云缓存CBS云硬盘CDB云数据库TGW-外网负载均衡集群外TGW

……TGWRoute2Route1TGWTGWTGWServerServerServerServerOSPFOSPFServerClientServerClientServerClientServerClientServerServerServerServer

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论