πŸš€λΉŒλ“œ 및 배포 μ‹œκ°„ 예츑

ν”„λ‘œμ νŠΈ μ•„ν‹°νŒ©νŠΈ 크기와 λ„€νŠΈμ›Œν¬ ν™˜κ²½μ„ μž…λ ₯ν•˜μ—¬ μ˜ˆμƒλ˜λŠ” 전체 배포 μ‹œκ°„μ„ μ‚°μΆœν•˜μ„Έμš”.

* Docker 이미지, λΉŒλ“œ κ²°κ³Όλ¬Ό λ“±μ˜ 총 μš©λŸ‰
* μ½”λ“œ 컴파일 및 ν…ŒμŠ€νŠΈμ— μ†Œμš”λ˜λŠ” μ‹œκ°„

μ˜ˆμƒ 전체 μ†Œμš” μ‹œκ°„

160초
단계별 μƒμ„Έμ˜ˆμƒ μ‹œκ°„
μ½”λ“œ λΉŒλ“œ 단계120s
μ•„ν‹°νŒ©νŠΈ 전솑 단계40s
μ»¨ν…Œμ΄λ„ˆ 기동 μ˜€λ²„ν—€λ“œμ•½ 15s

개발 μƒμ‚°μ„±μ˜ 핡심 μ§€ν‘œ, 배포 속도 μ΅œμ ν™”

μ†Œν”„νŠΈμ›¨μ–΄ 개발 μ‚¬μ΄ν΄μ—μ„œ λΉŒλ“œμ™€ λ°°ν¬λŠ” ν•˜λ£¨μ—λ„ μˆ˜μ‹­ λ²ˆμ”© λ°˜λ³΅λ˜λŠ” κ³Όμ •μž…λ‹ˆλ‹€. 배포에 10뢄이 κ±Έλ¦¬λŠ” νŒ€κ³Ό 1뢄이 κ±Έλ¦¬λŠ” νŒ€μ˜ 생산성 μ°¨μ΄λŠ” λ‹¨μˆœνžˆ 9λΆ„μ˜ 차이가 μ•„λ‹™λ‹ˆλ‹€. 배포가 λŠλ €μ§€λ©΄ κ°œλ°œμžλŠ” 배포 쀑 λ‹€λ₯Έ μž‘μ—…μœΌλ‘œ λ§₯락을 μ „ν™˜(Context Switching)ν•˜κ²Œ 되고, μ΄λŠ” 집쀑λ ₯ μ €ν•˜μ™€ 전체적인 개발 λ¦¬λ“¬μ˜ 파괴둜 μ΄μ–΄μ§‘λ‹ˆλ‹€. λ”°λΌμ„œ CI/CD νŒŒμ΄ν”„λΌμΈμ˜ 속도λ₯Ό κ°œμ„ ν•˜λŠ” 것은 κ°€μž₯ 수읡λ₯  높은 기술적 투자 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€.

λ³Έ μ˜ˆμΈ‘κΈ°λŠ” λΉŒλ“œ μ‹œκ°„κ³Ό λ„€νŠΈμ›Œν¬ 전솑 μ‹œκ°„μ„ λ‚˜λˆ„μ–΄ λΆ„μ„ν•©λ‹ˆλ‹€. λ§Œμ•½ 'μ•„ν‹°νŒ©νŠΈ 전솑 단계'의 비쀑이 λ„ˆλ¬΄ λ†’λ‹€λ©΄, 도컀 μ΄λ―Έμ§€μ˜ λ ˆμ΄μ–΄λ₯Ό μ΅œμ ν™”ν•˜μ—¬ λ³€κ²½λœ λΆ€λΆ„λ§Œ μ „μ†‘ν•˜λ„λ‘ ν•˜κ±°λ‚˜, λΉŒλ“œ μ„œλ²„μ™€ 배포 λŒ€μƒ μ„œλ²„λ₯Ό 같은 리전에 λ°°μΉ˜ν•˜λŠ” μ „λž΅μ΄ ν•„μš”ν•©λ‹ˆλ‹€. λ°˜λŒ€λ‘œ 'μ½”λ“œ λΉŒλ“œ 단계'κ°€ κΈΈλ‹€λ©΄ 증뢄 λΉŒλ“œ(Incremental Build)λ₯Ό λ„μž…ν•˜κ±°λ‚˜ 병렬 ν…ŒμŠ€νŠΈλ₯Ό 톡해 μ‹œκ°„μ„ 단좕해야 ν•©λ‹ˆλ‹€.

ν˜„λŒ€μ μΈ DevOps ν™˜κ²½μ—μ„œλŠ” '배포 μ‹œκ°„ 5λΆ„ 이내'λ₯Ό ꢌμž₯ λͺ©ν‘œλ‘œ μ‚ΌμŠ΅λ‹ˆλ‹€. λ³Έ 도ꡬλ₯Ό 톡해 ν˜„μž¬ 우리 ν”„λ‘œμ νŠΈμ˜ 배포 병λͺ© 지점이 어디인지 수치둜 확인해 λ³΄μ„Έμš”. 특히 λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€ μ•„ν‚€ν…μ²˜(MSA)둜 μ „ν™˜ν• μˆ˜λ‘ 각 μ„œλΉ„μŠ€μ˜ 배포 μ†λ„λŠ” 전체 μ‹œμŠ€ν…œμ˜ 민첩성을 κ²°μ •μ§“λŠ” 결정적인 μš”μ†Œκ°€ λ©λ‹ˆλ‹€. 수치λ₯Ό λ°”νƒ•μœΌλ‘œ νŒ€μ˜ 배포 λ¬Έν™”λ₯Ό κ°œμ„ ν•˜κ³ , 더 λΉ λ₯Έ ν”Όλ“œλ°± 루프λ₯Ό ꡬ좕해 λ³΄μ‹œκΈ° λ°”λžλ‹ˆλ‹€.

자주 λ¬»λŠ” 질문 (FAQ)

Q: 전솑 속도가 μ™œ μ˜ˆμƒλ³΄λ‹€ 느리게 λ‚˜μ˜€λ‚˜μš”?

A: Mbps λ‹¨μœ„λ₯Ό μ‹€μ œ μ΄ˆλ‹Ή 전솑 λ°”μ΄νŠΈ(MB/s)둜 λ³€ν™˜ν•  λ•Œ 8둜 λ‚˜λˆ„κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. λ˜ν•œ λ„€νŠΈμ›Œν¬ μ˜€λ²„ν—€λ“œμ™€ ν”„λ‘œν† μ½œ 지연이 μΆ”κ°€λ‘œ λ°œμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€.

Q: 도컀 λΉŒλ“œ 속도λ₯Ό 높이렀면?

A: .dockerignore νŒŒμΌμ„ 잘 κ΅¬μ„±ν•˜μ—¬ λΆˆν•„μš”ν•œ 파일이 μ»¨ν…μŠ€νŠΈμ— ν¬ν•¨λ˜μ§€ μ•Šκ²Œ ν•˜κ³ , 자주 λ³€ν•˜μ§€ μ•ŠλŠ” μ˜μ‘΄μ„± μ„€μΉ˜ λ ˆμ΄μ–΄λ₯Ό 상단에 λ°°μΉ˜ν•˜μ—¬ μΊμ‹œ νš¨μœ¨μ„ λ†’μ—¬μ•Ό ν•©λ‹ˆλ‹€.

Q: 블루-κ·Έλ¦° λ°°ν¬λŠ” μ‹œκ°„μ— μ–΄λ–€ 영ν–₯을 μ£Όλ‚˜μš”?

A: μƒˆλ‘œμš΄ ν™˜κ²½μ„ ν†΅μ§Έλ‘œ λ„μš°λŠ” 과정이 μΆ”κ°€λ˜λ―€λ‘œ 전솑 및 기동 μ‹œκ°„μ΄ μ•½ 2λ°° 정도 ν•„μš”ν•  수 μžˆμ§€λ§Œ, μ‚¬μš©μž μž…μž₯μ—μ„œλŠ” λ¬΄μ€‘λ‹¨μœΌλ‘œ 더 μ•ˆμ „ν•œ κ²½ν—˜μ„ μ œκ³΅ν•©λ‹ˆλ‹€.