여기서, 수직 확장, 수평 확장이 뭘까?
수직확장
기존 서버의 성능을 높이는 방식.
- 기존 서버 하나만 계속 강하게 만드는 것
🟡 장점: 구현이 간단하고 기존 구조 그대로 사용 가능
🔴 단점: 한계가 있음 (무한정 CPU, 메모리 늘릴 수 없음), 비용 비쌈
→ 관계형 DB(MySQL 등)는 일반적으로 이 방식을 많이 씀
수평 확장
서버 개수를 늘리는 방식
- 예: 서버 1대 → 서버 10대
데이터베이스를 여러 노드에 분산해서 처리 - 작은 서버 여러 개로 분산 처리
🟢 장점: 무한에 가까운 확장 가능, 장애 분산
🔴 단점: 구현이 복잡함 (분산 처리, 일관성 보장 어려움)
→ NoSQL(MongoDB, Cassandra, DynamoDB 등)은 이 방식을 쉽게 지원
어떻게? -> 샤딩 을 통해서.
하나의 큰 테이블(데이터)을 작게 쪼개서, 여러 서버에 나눠 저장하는 것
→ 일종의 분산 저장 방법임.
결론: 수평 확장은 상황에 따라 좋다
- ✅ 대규모 사용자, 빅데이터 처리, 실시간 분석, 캐시, 로그 저장
→ 수평 확장이 유리 (NoSQL) - ✅ 정합성 중시, 트랜잭션 필수, 관계 기반 설계 필요
→ 수직 확장이 더 적합 (RDBMS)
'TIL' 카테고리의 다른 글
stream vs for문 (0) | 2025.04.21 |
---|---|
특정 타입 Unique 제약 (0) | 2025.04.21 |
TPS , Latency, 에러율, CPU 사용률이 높을때 (0) | 2025.04.17 |
ConcurrenHashMap 원리 (0) | 2025.04.15 |
AI_ 음성 분할에 대해서 (0) | 2025.04.14 |