200여개 서비스 모노레포의 파이프라인 최적화

200여개 서비스 모노레포의 파이프라인 최적화

2
AI 요약

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

200여개 서비스 모노레포의 파이프라인 최적화

이 게시물은 토스 프론트엔드 챕터에서 200개 이상의 서비스를 관리하는 거대한 모노레포의 CI/CD 파이프라인 최적화 방법을 공유합니다.

주요 최적화 전략

  • 병렬화를 통한 CI/CD 빌드 속도 개선: CircleCI Dynamic Configuration을 활용해 각 서비스 빌드를 독립된 컴퓨팅 환경에서 병렬 실행하여 배포 시간을 5배 단축
  • Daily Docker Base Image: 모노레포를 미리 클론하여 포함한 도커 이미지를 매일 빌드하고 사용해 git checkout 시간을 36분에서 22초로 줄임
  • SSR Standalone Docker Image: Next.js standalone 모드를 참고하여 Yarn PnP 환경에 맞게 SSR 번들을 만들어 SSR Docker 이미지 크기를 4GB에서 200MB로 줄이고 배포 시간을 크게 단축

효과

  • 2개 서비스 변경 기준 배포 시간 30분에서 6분으로 개선
  • CI/CD 빌드 효율 및 배포 안정성 향상
  • Kubernetes Pod 초기화 시간 단축으로 배포 속도 증가