离线下载
获取电子书

HuangLily · 更新于 2018-01-16 19:01:01

摇篮守护进程如何使构建速度更快

Gradle守护进程是一个常驻构建进程.在两个构建之间的空闲期间会等待着下次构建.与每个构建加载Gradle到内存相比,对于多个构建只需要加载一次Gradle到内存具有明显的好处.这本身就是对性能的显著优化,但是不止这些.

现代JVM的显著优化是运行时代码优化.例如,热点(HotSpot)(由Oracle提供并作为OpenJDK的基础的JVM实现)适用于优化运行时代码.优化是渐进的,而不是瞬间的。也就是说,代码在运行期间逐步优化,这意味着后续版本纯粹是基于这个优化过程变得更快.HotSpot实验表明,它需要5至10某处构建以优化至稳定.在一个守护进程的第一个构建和第十之间感知的编译时间的差异可以说是相当巨大的.

守护程序还允许更有效地在内存中缓存整个构建。例如,需要构建(如插件,构建脚本)的类可以在内存中举行的构建。同样,摇篮可保持在内存中缓存的构建数据的诸如的任务输入和输出的哈希值,用于增量构建。