멀티 모듈 Gradle 빌드 속도 개선

Simple·2023년 11월 13일
0

개선 시리즈

목록 보기
5/5
post-thumbnail

상황

  • CI/CD의 속도가 느려 CD의 속도를 이전에 개선했고, CI 부분에서의 개선점을 찾고 있었다.(CD 속도 개선 이전 포스팅)
  • 로컬에서 gradle build시 속도가 느렸다.

기존

프로젝트를 빌드하는데만 로컬(M2 Pro)임에도 52초나 걸렸다.


해결

현재 나의 프로젝트에서 api 모듈과 admin 모듈이 core와 support 모듈에 의존하고 있다.

즉, api 모듈을 빌드하기 위해서 core와 support의 빌드가 선행이 되어야 api 모듈이 빌드될 수 있다.

하지만 core -> api,admin 또는 support -> api,admin
이런식으로 순서대로 빌드를 기다리게되면 기다리는시간이 쌓이게 되서 빌드가 오래걸린다.

그래서 해결법이 빌드 병렬 실행이다.

기존

./gradlew clean build

변경 후

./gradlew clean build --parallel

core,support -> api,admin 순서대로 빌드가 된다.

결과

위 병렬실행하지 않을 때와 타임라인 차이가 명확하게 나며 속도 차이도 확연하다.

52초 -> 24초로 약 2배이상 개선됐다.(로컬 빌드 기준)


참고

https://docs.gradle.org/current/userguide/performance.html#performance_gradle

profile
몰입하는 개발자

0개의 댓글