Cloud Native Application κ°λ°μ μν 12κ°μ§ μμΉ
1. CODEBASE
- μ½λλ² μ΄μ€λ Git μ μ₯μ νλλ‘ κ΄λ¦¬
- μ¬λ¬ νκ²½(κ°λ°/ν μ€νΈ/μ΄μ)μ λμΌν μ½λμμ λΆκΈ°(branch)νμ¬ κ΄λ¦¬
- ν μ½λλ² μ΄μ€ = νλμ μ ν리μΌμ΄μ
2. DEPENDENCY
- μ ν리μΌμ΄μ λ΄μμ μ’ μμ±μ ν΄κ²°
- 컨ν μ΄λνλ νκ²½μμλ μμ‘΄μ±μ΄ ν¬ν¨λ Docker μ΄λ―Έμ§ μ¬μ©
3. CONFIGURATIONS
- μμ€ν μ½λ μΈλΆμμ κ΅¬μ± κ΄λ¦¬ λꡬλ₯Ό ν΅ν΄ λ§μ΄ν¬λ‘ μλΉμ€μ νμν μμ λ€μ μ μ΄
- νκ²½ λ³μ(ENV)λ‘ μ€μ κ΄λ¦¬
4. LINKABLE BACKING SERVICES
- DB, Redis, S3 λ±μ λ°±μλ μλΉμ€λ λ 립μ μΈ λ¦¬μμ€λ‘ μ·¨κΈ( μμ‘΄μ± μ κ±° )
- μΈμ λ μ§ κ΅μ²΄ κ°λ₯νλλ‘ νκ²½ λ³μ κΈ°λ° μ°κ²°
5. STAGES OF CREATION
- λΉλ, 릴리μ¦, μ€ν λ¨κ³λ₯Ό λΆλ¦¬νμ¬ λ°°ν¬
- κ°κ° κ³ μ ν μμ΄λλ₯Ό νκ·Έλ‘ κ°μ ΈμΌν¨
- λ‘€λ°± κΈ°λ₯ μ 곡
- CI / CD λ₯Ό ν΅ν μλν κ΅¬μΆ νμ
6. STATELESS PROCESSES
- κ°κ°μ λ§μ΄ν¬λ‘ μλΉμ€λ λΆλ¦¬λ μ± λ 립μ μΌλ‘ μ΄μ
- νμν μμμ΄ μλ€λ©΄ μΊμ, λ°μ΄ν° μ μ₯μλ₯Ό ν΅ν΄ μΈλΆμ κ΅ν
7. PORT BINDING
- κ° μλΉμ€κ° HTTP μμ²μ μ§μ μ²λ¦¬νλ©°, νμμ λ°λΌ Nginxλ API Gatewayλ₯Ό ν΅ν΄ λΌμ°ν λ§ μ²λ¦¬
- λ§μ΄ν¬λ‘μλΉμ€λ λ 립μ μΈ νλ‘μΈμ€λ‘ μ€νλλ©°, κ° μλΉμ€κ° κ³ μ ν ν¬νΈλ₯Ό λ°μΈλ©
8. CONCURRENCY
- λ§μ΄ν¬λ‘μλΉμ€ + 컨ν μ΄λ μ‘°ν©
- Kubernetes, Docker Swarmμ μ¬μ©ν μλ νμ₯ μ§μ
- λ¨μΌ μ ν리μΌμ΄μ μΈμ€ν΄μ€ λμ μ¬λ¬ μΈμ€ν΄μ€λ₯Ό μ€ν.
9. DISPOSABILITY
- μ ν리μΌμ΄μ μ λͺ μ΄ λ΄λ‘ μμ κ°λ₯ν΄μΌ νλ©°, SIGTERM μ νΈλ₯Ό λ°μ μ μ μ’ λ£ κ°λ₯ν΄μΌ ν¨
- μλΉμ€ μΈμ€ν΄μ€ μμ κ° κ°λ₯ν΄μΌν¨
10. DEVELOPMENT & PRODUCTION PARITY
- κ°λ° λ¨κ³μ νλ‘λμ λ¨κ³λ₯Ό ꡬλΆ
- κ°λ°, μ€ν μ΄μ§, μ΄μ νκ²½ κ°μ 격차λ₯Ό μ€μ΄κ³ , μ΅λν μ μ¬ν νκ²½μμ μ ν리μΌμ΄μ μ κ°λ°, ν μ€νΈ λ° λ°°ν¬
11. LOGS
- μ ν리μΌμ΄μ μ λ‘κ·Έλ₯Ό νμΌλ‘ κ΄λ¦¬νμ§ μκ³ , νμ€ μΆλ ₯μΌλ‘ μ λ¬
- μ ν리μΌμ΄μ λ‘μ§κ³Ό λΆλ¦¬λμ΄ μ ν리μΌμ΄μ μ΄ μ€νλμ§ μλ μνμ¬λ λ‘κ·Έλ μ μ μλ ν΄μΌν¨
- λͺ¨λν°λ§ μμ€ν μ ν΅ν΄ μ₯κΈ°μ μΌλ‘ 보κ΄λ λ‘κ·Έλ₯Ό λΆμ
12. ADMIN PROCESSES FOR EVENTUAL PROCESSES
- κ΄λ¦¬ νλ‘μΈμ€λ μ ν리μΌμ΄μ κ³Ό λμΌν νκ²½μμ μ€ν
- κ΄λ¦¬ μμ μ μ΄μ μ€μΈ μ ν리μΌμ΄μ κ³Ό λΆλ¦¬λ μμ μμ μΌλ‘, λ°μ΄ν° λ§μ΄κ·Έλ μ΄μ , μΌνμ± μ€ν¬λ¦½νΈ μ€ν, λλ λ°μ΄ν° μ²λ¦¬ λ±μ΄ ν¬ν¨
-
Eventual Processesλ νΉμ μμ μ μ€νλλ©°, μ΄λ²€νΈ κΈ°λ°μ λΉλκΈ° λλ μΌνμ± νλ‘μΈμ€
- λ°μ΄ν°λ² μ΄μ€ λ§μ΄κ·Έλ μ΄μ
- λ°±κ·ΈλΌμ΄λ λ°μ΄ν° μ²λ¦¬
- λΉλκΈ° μ΄λ©μΌ μ μ‘
- λλ νμΌ μ²λ¦¬ (μ: AWS S3μ μ°λλ μμ )