旧酒新瓶——换个角度提升app性能与质量量.pdfVIP

旧酒新瓶——换个角度提升app性能与质量量.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
旧酒新瓶——换个⻆度 提升 App 性能与质量 ⾼亮亮 讲师介绍 ⾼亮亮 • 饿了么移动技术部基础架 请在此插⼊照⽚ (直接覆盖在中间区域) 构组⾼级 iOS ⼯程师,对 iOS 架构和系统底层有深 ⼊研究,擅⻓移动性能分 析,trouble shooting 、iOS 逆向等重难点⼯作。 1 性能与质量概述 ⽬录 2 “新”技术概念的介绍与实践 CONTENTS 3 违反常规的“真理” 性能与质量概述 • 应⽤分级以及与性能质量的关系 • 根据设备特点设计提升⽅案 • 结合主要业务场景制定优先级 回流(Reflow)/ 重绘(Repaint) • 回流:流式布局下,由于参照元素布局框发⽣变化⽽导致的布局重新计算。 • 重绘:元素布局不发⽣变化的情况下,重新渲染视图。 案例重现 • 单张订单视图作为重⽤的基本单元 • ⼦视图层级复杂,且采⽤⾃动布局技术 • ⼦视图不固定,且存在强依赖关系 • 商品列表在滚动时产⽣严重回流 解决⽅案 • 调整视图关系,合理利⽤重⽤机制,避免滚动时回流 • ADK ⽅案,异步计算布局并缓存,细腻的线程控制 节流(Throttle)/ 防抖(Debounce) 案例重现 失败重试导致的 Self-DDoS • 在保证服务前提下的⾃动重试,且固定重试频率 • 忽略错误类型,“⼀⼑切”式的 DFF 设计 • 重试周期同步,从⽽导致恶性循环 解决⽅案 • 指数回退 —— 固定重试间隔加倍 • 添加抖动 —— 随机抖动间隔,避免锁定同步周期 • 标记重试 —— 优先处理⾼重试请求 • “⻩⾦”重试节流策略 拓展运⽤ • 实时查询防抖 —— 减少⽹络请求 • 事件响应节流 —— 避免冗余资源消耗 • 界⾯渲染节流 —— 避免⼤量 CPU 消耗 渐进增强(PE)/ 优雅降级(GD) • != 容错设计(替代品避免消极影 响) • 做减法,直到系统完全不可⽤ • 保证最基本的功能可⽤ • 做加法,逐步提升系统 案例重现 基于三⽅服务的推送系统 • 不同业务对推送的实时性、可靠性要求⾼且存在差异 ➡ 利⽤更优的组件作为⾸选,三⽅作为备选 • 三⽅服务不可控,且在实时性、可靠性上都存在不⾜ ➡ 操作的效率和速度随着失效部件的增加逐渐下降 解决⽅案 符合“优雅降级”的推送系统设计 优先建⽴⻓连,可控可靠的通道

文档评论(0)

zhuwo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档