Infrastructure/Deployment κ°λ
- CI / CD (μ§μμ ν΅ν© / μ§μμ λ°°ν¬)
- CI (Continuous Integration): μ½λλ₯Ό κΉνλΈμ μ¬λ Έμ λ, λ΄(GitHub Actions)μ΄ μμμ μ½λλ₯Ό λ€μ΄λ°κ³ , μκΉ μ°λ¦¬κ° μ§ ν μ€νΈ μ½λλ€μ μ λΆ μ€νν΄ λ³΄κ³ μ΄μμ΄ μλμ§ κ²μ¬νλ κ³Όμ μ λλ€. βν©κ²©!β νμ μ΄ λλ©΄ μ½λλ₯Ό μ€ν κ°λ₯ν νμΌ(.jar)λ‘ μ‘°λ¦½(Build)ν©λλ€. (μλνλ κΉκΉν QA μμ μν )
- CD (Continuous Deployment): μ‘°λ¦½μ΄ μλ£λ νμΌμ μ€μ μλΉμ€κ° λμκ°λ μλ²(EC2 λ±)λ‘ μμ νκ² λ°°λ¬νκ³ μ€νμν€λ κ³Όμ μ λλ€. (μλνλ νλ°° κΈ°μ¬ μν )
- Docker (λ컀)
- βλ΄ μ»΄ν¨ν°μμ μ λλλ° μλ²μμ μ μ λμ§?β λΌλ κ°λ°μμ μμν λ³λͺ μ μμ μ€ κ΅¬μΈμ£Όμ λλ€.
- μ°λ¦¬μ Spring Boot μ±, μλ°(JDK), μ€μ νμΌλ€μ νλμ λ€λͺ¨λ 컨ν μ΄λ λ°μ€(μ΄λ―Έμ§)μ ν¬μ₯ν©λλ€. μ΄ λ°μ€λ Macμ΄λ , Windowsλ , AWS 리λ μ€ μλ²λ λμ»€λ§ κΉλ € μμΌλ©΄ 무쑰건 λκ°μ΄ μ€νλ©λλ€.
- 무μ€λ¨ λ°°ν¬ (Blue/Green)μ Nginx
- κΈ°μ‘΄ λ°°ν¬μ λ¬Έμ μ : μ λ²μ μ λμ°λ €λ©΄ κΈ°μ‘΄ μλ²λ₯Ό λκ³ μΌμΌ ν©λλ€. μ΄λ μ¬μ©μλ μ½ 10~30μ΄κ° βμλ² μ μ λΆκ°(μλ¬)β νλ©΄μ λ³΄κ² λ©λλ€. (λ€μ΄νμ)
- Blue/Green ν΄κ²°μ± : μλ² μμ λκ°μ 곡κ°μ 2κ° λ§λλλ€. (νλ λ°©, μ΄λ‘ λ°©). νμ¬ μ μ λ€μ βνλ λ°©(Blue)βμμ μλΉμ€λ₯Ό μ΄μ© μ€μ λλ€. μ°λ¦¬λ λͺ°λ βμ΄λ‘ λ°©(Green)βμ μ λ²μ μ μλ²λ₯Ό λμλ‘λλ€.
- Nginx(리λ²μ€ νλ‘μ): μλ λ¬Έμ§κΈ°μ λλ€. μ΄λ‘ λ°© μλ²κ° μμ ν μΌμ Έμ μ€λΉκ° λλ¬λ€λ μ νΈλ₯Ό λ°μΌλ©΄, Nginxκ° μ μ λ€μ΄ λ€μ΄μ€λ λ¬Έμ νλ λ°©μμ μ΄λ‘ λ°©μΌλ‘ 0.1μ΄ λ§μ λΈκΉ! νκ³ λ°κΏλ²λ¦½λλ€. μ μ λ μλ²κ° μ λ°μ΄νΈλμλμ§λ λͺ¨λ₯΄κ² μμ°μ€λ½κ² μ λ²μ μ μ°κ² λ©λλ€. μ΄κ² 무μ€λ¨ λ°°ν¬μ λλ€.