关于 M-Files
M-Files 是一个屡获殊荣的企业内容管理系统,在 Gartner 魔力象限(Magic Quadrant)被评为企业内容管理领域的远见者。该公司可以帮助其客户组织和访问信息,不论信息保存在何处以及采用何种系统(Salesforce、SharePoint、Dropbox 等)。M-Files 研发团队负责开发和维护该系统基于 Windows 的后端服务、其强大 Windows 桌面应用程序以及针对所有主要平台、功能丰富的网页和移动应用程序。
难点
当涉及大幅缩短编译时间时,M-Files 的开发人员面临着双重挑战:缩短服务端庞大的集中式连续集成构建的时间,同时仍需缩短个体开发端繁琐构建的时间。
在持续集成方面,M-Files 拥有自己的 CI 自动化构建系统,每天都会进行五到十次耗时 90 分钟的构建。这些构建产生了一个瓶颈,有时会阻碍开发人员在当天采取必要的行动。
谈到开发人员,他们还需要单独编译几十个日常增量构建,这拖缓了他们的整体工作流程。正如 M-Files 副 CTO Jari Siukonen 告诉我们的那样:“在过去,我们解决问题的办法只有耐心……构建速度较慢,时间都耗在等待结果上了。” 幸运的是,M-Files 决定采用 Incredibuild,向漫长的构建说不。
Incredibuild 已成为我们构建系统的重要组成部分,尤其是对于集中式 CI 构建
”INCREDIBUILD 的应对之道
通过让每台机器/服务器利用网络中未充分利用的 CPU 算力,Incredibuild 的技术帮助 M-Files 缩短了个体构建和集中式构建的时间。然后,这一改变帮助 M-Files 实现了每日构建量翻倍,大幅提升了研发的生产效率。
Siukonen 表示道:“Incredibuild 能够让我们在 30 分钟内完成一次完整的系统构建,而非之前的一整夜,这消除了开发人员的挫折感。对于我们来说,在 30 分钟(而非 90 分钟)内完成构建非常重要,因为这能让我们更快地进行测试等等。”
当被问及更快的构建是否意味着会直接影响完整构建能力,使每天比以前产出更多完整的构建数量,Siukonen 告诉我们:“此前,每台服务器在办公时间内最多只能进行 5 次完整的构建,而现在,如果需要,我们可以进行 10 次。所以我们运行完整构建的能力完全不同了。”
此外,每个开发人员的个体构建时间也缩短了 55%。Siukonen 表示:“现在,每一位开发人员都能更快地获得代码更改反馈,这使得他/她能够更加专注于手头的任务,更快地进入更改的测试/验证阶段。”
M-Files 的开发人员们认识到,Incredibuild 的影响远远超出了即时构建加速的范畴。“正常情况下,更快的构建时间,则意味着更加敏捷的开发。这就是一名开发人员能够在当天采取行动和如果浪费了一天的不同之处。”
结果概要
-
每台 CI 服务器的每日构建量从5到10
- 持续集成集中构建
- 90分钟Without Incredibuild
- 30分钟With Incredibuild