Canva, CI 빌드 시간을 수 시간에서 30분 미만으로 단축

2024-12-18

Canva 엔지니어링 팀은 지속적 통합(CI) 빌드 시간을 평균 80분에서 30분 미만, 경우에 따라 15분까지 크게 단축하는 데 성공했습니다. 이는 다각적인 접근 방식을 통해 달성되었습니다. Bazel 캐시 문제의 식별 및 해결, 파이프라인 구조 최적화, Git 저장소 체크아웃 및 캐싱 개선, Bazel 원격 빌드 실행(RBE) 활용 등이 포함됩니다. 또한 다양한 인스턴스 유형 테스트 및 Bazel 설정 조정 등 광범위한 실험이 수행되었습니다. 일련의 증분적 개선을 통해 CI 효율성이 크게 향상되고 비용이 절감되었으며 개발자 경험이 향상되었습니다.

더 보기

Canva 인쇄 주문 라우팅의 과학

2024-12-14

Canva 엔지니어링 팀은 인쇄 주문 라우팅을 최적화하기 위해 그래프 탐색을 위한 구성 가능한 규칙 시스템을 구축했습니다. 그래프 생성, 탐색, 의사 결정 프로세스를 분리하여 높은 가용성과 확장성을 보장합니다. 데이터 관리에는 관계형 데이터베이스를 사용하고, 빠른 쿼리를 위해 비동기적으로 캐시된 그래프를 생성합니다. 규칙 엔진과 수정된 최소 비용 흐름 알고리즘을 통해 밀리초 단위로 최적의 경로를 찾아내어 운송 거리와 탄소 배출량을 최소화하고 사용자 경험과 운영 효율성을 향상시킵니다.

더 보기