写点什么

从分钟到秒:抖音如何通过动态库优化实现高效构建 |QCon 北京

  • 2025-04-07
    北京
  • 本文字数:1309 字

    阅读完需:约 4 分钟

大小:691.92K时长:03:56
从分钟到秒:抖音如何通过动态库优化实现高效构建 |QCon北京

2025 年 4 月 10 - 12 日,QCon 全球软件开发大会将汇聚全球 140+ 技术先行者及创新实践者,直击行业痛点,解锁可复制的经验与模式。这不仅是一场会议,更是一次对技术演进的集体探索。无论你是资深开发者,还是技术管理者,都能在这里有所收获,为下一步的技术决策提供方向。


字节跳动软件工程师张星宇已确认出席并发表题为《从分钟到秒:抖音如何通过动态库优化实现高效构建》的主题分享。日常开发中的任何一次改动,都需要经历编译、产物传输到真机、调试启动等步骤才能看到最终效果。抖音作为一个超大规模的 App,往往需要两三分钟后才能看到运行效果。且正随着工程复杂度的增加而持续劣化中,严重影响了研发效率。


本次演讲首先会分析主要的耗时步骤,可能的度量方式与优化思路。其次会简单对比业内其它优化方案(比如 Preview、Mergable Library、Injection 等)的优缺点。最后会深度介绍抖音为何选择利用动态库的特性,结合对研发流程和构建工具链的改造,对构建用时进行大幅优化,并且保持在与工程复杂度无关的常数级别,完成彻底的治理。


张星宇 2018 年加入字节跳动,持续专注于客户端研发效能方向。曾主导公司内组件发布、Pipeline 编排、移动端 DevOps 平台从零到一的建设。目前负责编译构建、索引调试等客户端研发效率和体验的优化工作。他在本次会议的详细演讲内容如下:


演讲提纲

1. 项目背景

  • 增量构建各阶段主要耗时瓶颈分析和度量方式

  • 业内常见的优化方案介绍,各自优缺点分析

2. 核心实现流程

  • 基于动态库方案的优势及挑战

  • 链接器的工作模型和动态库常见的符号问题

  • 构建流程与链接器配合调整,保障产物正确性

  • 常见的不兼容动态库的场景,以及适配方案

3. 落地收益与未来规划

  • 在抖音的实际落地效果与收益

  • 渐进式迭代思路


您认为,这样的技术在实践过程中有哪些痛点?

  • 部分特殊的业务代码如果没有考虑过动态库场景,有一定的适配成本

  • 部分改动需要对构建步骤有一定的调整,需要结合构建系统(比如 Bazel)的支持才能达到完全无侵入的体验

  • 工程规模越大,方案收益越大。对于中小型业务来说收益就不一定足够明显


演讲亮点

  • 利用动态库的方式完成秒级链接和构建耗时的大幅降低

  • 基于对构建工具链的改动保障任意多个组件可以转换为动态库

  • 通过将线性复杂度降维成常数复杂度,对关键耗时步骤进行根本性的优化治理


听众收益

  • 对构建各个环节的主要耗时点、度量方式、可能的优化思路有整体的了解

  • 对动态库的原理和优点有更深入的理解

  • 对链接器的工作原理有更深入的理解


除此之外,本次大会还策划了多模态大模型及应用AI 驱动的工程生产力面向 AI 的研发基础设施不被 AI 取代的工程师大模型赋能 AIOps云成本优化Lakehouse 架构演进越挫越勇的大前端等专题,届时将有来自不同行业、不同领域、不同企业的 100+资深专家在 QCon 北京现场带来前沿技术洞察和一线实践经验。


目前,所有大会演讲嘉宾已结集完毕,了解更多报名和详情信息可扫码或联系票务经理 18514549229 咨询。



为确保大会顺利举行,现诚邀志愿者加入,时长 3.5 天。可与大咖交流、获极客时间 VIP 月卡、大会演讲视频资源和证书。主办方提供午餐和交通支持。时间:4 月 9 日 13:00-4 月 12 日 18:00,地点:北京万达嘉华酒店,报名链接:https://www.infoq.cn/form/?id=2088

2025-04-07 18:0015308

评论

发布
暂无评论

Mac移植版 Nebula街机模拟器最新汉化包

胖墩儿不胖y

mac游戏 游戏推荐

2023年知名国产数据库厂家汇总

行云管家

数据库 国产化 数据运维 数据安全运维 信创国产化

黄金眼PAAS化数据服务DIFF测试工具的建设实践 | 京东云技术团队

京东科技开发者

测试 PaaS 回归测试 企业号10月PK榜

面试多起来了

王磊

Java

AIGC立法和相关版权案例分享-“心寄源”法律沙龙(2023第五期 | 总第十期)成功召开

开放原子开源基金会

最全数据安全评估标准汇编,你应该需要!(附下载)

极盾科技

数据安全

第1期 | GPTSecurity周报

云起无垠

Ask Milvus Anything!聊聊被社区反复@的那些事儿ⅠⅠ

Zilliz

Milvus Zilliz AIGC 向量数据库

iPhone 15 拆机调查来了;小米澎湃 OS 彻底重写底层架构丨 RTE 开发者日报 Vol.69

声网

九章云极DataCanvas多模态大模型平台实践与思考

九章云极DataCanvas

架构师日记-聊聊开发必掌握的那些实践技能 | 京东云技术团队

京东科技开发者

软件开发 代码注释 开发技能 企业号10月PK榜

精彩回顾|【ACDU 中国行·成都站】数据库主题交流活动成功举办!

墨天轮

MySQL 数据库 oracle postgresql zabbix

倒计时 2 天!聚焦 Arm 性能提升,助力龙蜥生态落地应用

OpenAnolis小助手

开源 芯片 arm Meetup 龙蜥社区

腾讯大数据 x StarRocks|构建新一代实时湖仓

StarRocks

大数据 腾讯 StarRocks 湖仓

低代码平台探讨-MetaStore元数据缓存 | 京东云技术团队

京东科技开发者

缓存 低代码 元数据 企业号10月PK榜

从理论到实践,实时湖仓功能架构设计与落地实战

袋鼠云数栈

数据中台 数据仓库 数据湖 湖仓一体 实时湖仓

活动回顾 | MatrixOne 在 SaaS 企服领域的应用解读

MatrixOrigin

数据库 分布式 HTAP MatrixOrigin MatrixOne

「爱嗨游」发布会剧透|应用出海十大难题,全景方案一次解决

融云 RongCloud

产品 社交 泛娱乐 GenAI 爱嗨游

技术同学如何设计职业规划

老张

职业规划 职场成长 职场发展

SOA认知和方法论 | 京东物流技术团队

京东科技开发者

架构 软件架构 SOA 企业号10月PK榜

欢迎来到 GPTSecurity!共建知识库

云起无垠

GPTSecurity

华为云GaussDB亮相金融业数据库技术大会

华为云开发者联盟

数据库 后端 华为云 资讯 华为云开发者联盟

深入剖析 API 安全防护的最佳实践策略

Apifox

程序员 API 接口安全 接口工具 API 安全

Node.js 21 版本已发布!

南城FE

JavaScript 前端 nodejs

从分钟到秒:抖音如何通过动态库优化实现高效构建 |QCon北京_架构_QCon全球软件开发大会_InfoQ精选文章