艾石光,字节跳动前端工程师,加入字节跳动以来一直致力于发展和建设前端基础工程,包括基础设施建设、业务工程与过程的改进和打磨。与团队一起,在为公司业务提供中台产品的同时,也在努力提升公司前端团队的研发效率与工程质量。至今,已经成功打造了微服务技术体系、富媒体中台框架、服务迁移工具等产品。艾石光一直活跃在前端开发领域,为加入字节跳动之前,曾经在阿里巴巴和 CRIC 等企业参与前端开发,有丰富的工程化产品、技术中台和研发框架的打造经验。
艾石光,字节跳动前端工程师,加入字节跳动以来一直致力于发展和建设前端基础工程,包括基础设施建设、业务工程与过程的改进和打磨。与团队一起,在为公司业务提供中台产品的同时,也在努力提升公司前端团队的研发效率与工程质量。至今,已经成功打造了微服务技术体系、富媒体中台框架、服务迁移工具等产品。艾石光一直活跃在前端开发领域,为加入字节跳动之前,曾经在阿里巴巴和 CRIC 等企业参与前端开发,有丰富的工程化产品、技术中台和研发框架的打造经验。
传统前端业务会根据业务线集成在一个站点上,随着业务复杂度上升,包体积会迅速变的过大。为了适应这个变化往往需要更多的开发者、更细力度的团队组织。分组开发时大家的模块解耦到各自完成,上线时糅合在一起运行, 产生出层出不穷的分支合并、代码回滚,都会造成合作效率的骤降。这正是头条号平台在 2017 年时面临的问题。
过大的代码集合还会造成发布频繁,每个业务分支和功能点都有一定的更新频率,如果以传统的独石系统开发、验证和上线,每一个业务都会让项目所有一起升级、测试和上线,发布频率的总和会非常高、非常频繁。如果不解除原有的耦合会彻底失去响应能力。
更进一步来看以如此之高的上线频率、版本迭代速度,开发者极难追溯哪个版本对应哪个改动。
字节跳动微服务前端解决方案为应对以上挑战而生。经过几年发展已经成功支持了几十个对内和对外的系统。