Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/myeonghan-nim/monolithic-architecture

πŸ“– Study: monolithic architecture
https://github.com/myeonghan-nim/monolithic-architecture

django monolithic-architecture python

Last synced: 26 days ago
JSON representation

πŸ“– Study: monolithic architecture

Awesome Lists containing this project

README

        

# monolithic architectrue

## λͺ¨λ†€λ¦¬μ‹ μ•„ν‚€ν…μ²˜μ™€ λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€ μ•„ν‚€ν…μ²˜

### λͺ¨λ†€λ¦¬μ‹ μ•„ν‚€ν…μ²˜

λͺ¨λ“  κΈ°λŠ₯이 ν•˜λ‚˜μ˜ 큰 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ— ν¬ν•¨λ˜μ–΄ μžˆλŠ” ꡬ쑰λ₯Ό 의미

#### μž₯단점

1. μž₯점: λ‹¨μˆœν•˜κ³  개발 μ΄ˆκΈ°μ— λΉ λ₯΄κ²Œ μ‹œμž‘μ΄ κ°€λŠ₯
2. 단점: 개발이 μ§„ν–‰λ μˆ˜λ‘ μœ μ§€λ³΄μˆ˜κ°€ μ–΄λ €μ›Œμ§€κ³  ν™•μž₯성에 ν•œκ³„κ°€ 쑴재

### λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€ μ•„ν‚€ν…μ²˜

μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ—¬λŸ¬ 개의 λ…λ¦½λœ μ„œλΉ„μŠ€λ‘œ λ‚˜λˆ„μ–΄ κ΄€λ¦¬ν•˜κ³  이듀을 각각 λ…λ¦½μ μœΌλ‘œ 배포 및 운영

#### μž₯단점

1. μž₯점: μ„œλΉ„μŠ€ κ°„μ˜ 독립성이 ν™•λ³΄λ˜κ³  μŠ€μΌ€μΌλ§μ΄ μœ μ—°
2. 단점: 운영 ν™˜κ²½μ΄ λ³΅μž‘ν•˜κ³  μ„œλΉ„μŠ€ κ°„μ˜ 톡신 λ¬Έμ œκ°€ λ°œμƒν•  κ°€λŠ₯μ„± 쑴재

## μ•„ν‚€ν…μ²˜μ—μ„œ μ€‘μš”ν•˜κ²Œ κ³ λ €λ˜λŠ” λ‚΄μš©

### ν™•μž₯μ„±κ³Ό κ°€μš©μ„±

#### ν™•μž₯μ„±

μ„œλ²„μ— κ°€ν•΄μ§€λŠ” λΆ€ν•˜κ°€ 증가할 λ•Œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ 이λ₯Ό 효과적으둜 μ²˜λ¦¬ν•  수 μžˆλŠ” λŠ₯λ ₯을 μ˜λ―Έν•˜λ©° λ‹€μŒκ³Ό 같은 ν™•μž₯이 쑴재

1. μˆ˜ν‰μ  ν™•μž₯: μ„œλ²„μ˜ 수λ₯Ό μ„λ €μ„œ ν™•μž₯, Scale Out
2. 수직적 ν™•μž₯: μ„œλ²„μ˜ μ„±λŠ₯(CPU, λ©”λͺ¨λ¦¬ λ“±)을 λ†’μ—¬μ„œ ν™•μž₯, Scale Up

#### κ°€μš©μ„±

μ‹œμŠ€ν…œμ΄ μ§€μ†μ μœΌλ‘œ μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν• μˆ˜ μžˆλŠ” λŠ₯λ ₯을 μ˜λ―Έν•˜λ©° **κ³ κ°€μš©μ„±(HA)**은 μ„œλΉ„μŠ€μ˜ 쀑지 μ‹œκ°„μ„ μ΅œμ†Œν™”ν•˜λŠ” 것이 λͺ©ν‘œ

### CAP 이둠

λΆ„μ‚° μ‹œμŠ€ν…œμ—μ„œ μ‹œμŠ€ν…œμ€ 일관성, κ°€μš©μ„±, λΆ„ν•  ν—ˆμš©μ„± 쀑 두 κ°€μ§€λ§Œ λ™μ‹œμ— λ§Œμ‘±ν•  수 μžˆμŒμ„ μ„€λͺ…ν•˜λŠ” 이둠

- 일관성: λͺ¨λ“  λ…Έλ“œκ°€ λ™μΌν•œ 데이터λ₯Ό κ°€μ§€λŠ” 것
- κ°€μš©μ„±: μ‹œμŠ€ν…œμ΄ 항상 μš”μ²­μ— 응닡할 수 μžˆλŠ” μƒνƒœ
- λΆ„ν•  ν—ˆμš©μ„±: λ„€νŠΈμ›Œν¬μ—μ„œ 뢄할이 λ°œμƒν•˜λ”λΌλ„ μ‹œμŠ€ν…œμ΄ 계속 μž‘λ™ν•  수 μžˆλŠ” μƒνƒœ

### κ³ λΆ€ν•˜ μ„œλ²„λ₯Ό μœ„ν•œ κΈ°λ³Έ 섀계 νŒ¨ν„΄

- λ‘œλ“œ λ°ΈλŸ°μ‹±: νŠΈλž˜ν”½μ„ μ—¬λŸ¬ μ„œλ²„μ— κ³ λ₯΄κ²Œ λΆ„λ°°ν•΄ μ„±λŠ₯을 λ†’μ΄λŠ” 것
- 캐싱: 반볡적인 데이터λ₯Ό λ©”λͺ¨λ¦¬μ— μ €μž₯ν•˜μ—¬ μ„±λŠ₯을 ν–₯μƒν•˜λŠ” 것
- 비동기 처리: I/O μž‘μ—…κ³Ό 같은 μž‘μ—…μ„ λΉ„λ™κΈ°λ‘œ μ²˜λ¦¬ν•˜μ—¬ μ„œλ²„ μžμ›μ„ 효율적으둜 ν™œμš©ν•˜λŠ” 것