使用 Gradle Enterprise 提高 React 和 JavaScript 构建性能

191 阅读3分钟

在这篇文章中,解释了为什么要使用 Gradle Enterprise 来增强 React 和 JavaScript 构建以及如何做到这一点。

多语言的挑战

软件领域是碎片化和专业化的,并且未来也是如此。开发人员有自己喜欢的开发、构建、测试等工具。通常被称为选择的“反模式”,尤其是在不断发展的开源开发环境中。

对抗这种趋势对于公司来说并不是一件容易的事,最终,标准化甚至会导致反模式。意识到这一点,如果公司拥有多语言构建系统环境的通用模式,那么该如何提高公司的开发人员生产力? Gradle 企业版前端团队已经落地了相关工具链,并取得了一些成果:

  • 每周 431 次构建
  • (串行)每次构建节省 23.46 分钟
  •  串行执行系数:3.3
  • (实际)每次构建节省 7.1 分钟
  • 每周节省 3064 分钟(7.1 分钟 x 431 次构建)
  • 每年节省 102 天

将 Gradle Enterprise 与 Java 结合使用的同事发现构建时间缩短了 80-90%,使用开源版或 Gradle Enterprise Build Scan™(构建扫描) 服务有效地解决了问题(例如,使用构建扫描分析构建差异)。使用基于 JavaScript 的 Node 和 React 等衍生平台构建,可以整合 Gradle Enterprise 中的性能和故障分析数据来实现生产力的提高。

使用 Gradle Enterprise提高 Webpack 构建的速度和可靠性

为了提高 JavaScript 构建环境中的开发人员生产力, Gradle Enterprise 前端团队使用 React 和 Node.js 与 Webpack 来构建 Gradle Enterprise 产品的 UI。

该团队将 Gradle 构建脚本包装在他们的 Webpack 驱动的 CI 构建中,以使用Gradle Enterprise 跟踪性能,并使用**Gradle Node 插件 来包装Webpack 、Jest、ESLint 等命令。 

除了团队通过缓存构建命令实现的实时性能提升之外,使用 Gradle Enterprise Build Scan™服务还提高了调试和故障排除的效率。借助灵活且可共享的控制台日志,工程师可以快速协作处理故障并显著缩短解决问题的时间。

Build Failures Analytics(构建故障分析) 仪表板在前端和后端开发团队中启用了更有效的工具链故障跟踪,使他们能够主动识别负面趋势并快速纠正它们。通过在这一领域集中精力,开发人员不必报告个别故障,也不必对构建过程保持警惕。这由DPE(生产力)工程师使用仪表板中显示的汇总故障数据来处理,尽管并非所有企业都需要建立专门的DPE工程团队来实现这些。

Trends & Insights 趋势&洞察 视图帮助DPE工程团队跟踪构建性能和缓存的工作情况,这对于确保性能回归不会随着代码库的增长而重新出现至关重要。同样,开发人员不必考虑这一点,他们可以专注于自己的工程并依赖于快速且一致的构建过程。

总结

显然,将构建数据和指标集中到 Gradle Enterprise 中,多语言开发团队可以从中受益。Gradle 构建脚本的灵活性使得将其他语言的编译过程包装到构建中变得很容易,从而可以捕获这些数据并与完整构建的其他部分一起查看。通过 Build Scan™ (构建扫描) 获得基本的构建细节,故障排除时间可能从几小时下降到几分钟。 Gradle Enterprise UI 工程师通过将 Gradle Enterprise 用于他们基于Webpack 的 JavaScript 构建,生产力得到显著提升,现在,越来越多的案例证明了DPE 策略的真正价值。

(扫码获取Gradle开发人员生产力工程白皮书)

Gradle白皮书二维码.png