天道酬勤,学无止境

大规模构建

前端⼤规模构建演进实践

作者:杨伟伟掌门教育效能研发前端工程师掌⻔教育⾃动化构建历程在业内前端构建,⼀般分为三种:⼿动触发构建:这个阶段⾮常原始,需要我们⾃⼰在本地进⾏ git pull/npm install/npm run build 等 等操作,也容易出现问题;虚拟机 Jenkins 集群分布式构建:通过 Master 将任务分配到对应的 Slave 机器上执⾏构建,能极⼤ 的均衡资源,利⽤性能,同时解放双⼿;容器集群构建:容器构建,镜像发布,可以进⼀步的节约资源;不过掌⻔教育在 2019 年之前,前端研发更多是在本地进⾏构建,再通过运维的脚本来进⾏部署,也容易 导致出现⽣产故障。所以我们收集反馈,结合实际情况,开发出 v1.0 构建模式,也取得了很好的成果。但 并没有以此就认为⾼枕⽆忧,也对很多痛点进⾏持续的优化,最后迭代出 v2.0 的⽅案。在这个过程中,前 端业务壮⼤,CI 构建经过 400+ 多应⽤,每周 2000+ 次构建,300+ 次的⽣产发布的⼤考,持续的成 ⻓。v1.0 ⾯对的挑战v1.0 前端构建状况,⼀种是通过 webhook 来触发流⽔线构建,第⼆种是通过在 cd 上新建构建单来触构 建。如果构建任务⽐较多,按照单台机器的是远远不够,在这种情况下就需要借助 Jenkins 的 Master/Slave 的主从模式,来解决服务器的资源压⼒。让 Master 的服务器来进⾏调度资源

2021-05-13 21:03:18    分类:博客    大规模构建   前端