codemapo
est. 2024
블로그
BLOG
로드맵
ROADMAP
유틸리티
UTILITY
프로젝트
PROJECTS
소개
ABOUT
KO / EN
KO / EN
HOME
/
BLOG
지식 지도
— Knowledge Index
지금까지 쓴 글 전부를 카테고리·좌표로 색인했습니다. 좌표는 분야(축)와 글의 순번을 가리킵니다.
Total
481
편
Categories
32
축
This page
5
편
Updated
26.05
전체
481
M
인공지능
10
M
AI 엔지니어링
7
A
아키텍처
6
M
인공지능
1
B
백엔드
8
B
백엔드 엔지니어링
2
C
커리어
5
F
컴퓨터과학
190
F
자료구조
3
D
데이터베이스
2
C
개발자 성장
2
I
데브옵스
22
G
트러블슈팅
30
U
프론트엔드
18
U
프론트엔드 엔지니어링
3
U
프론트엔드 프레임워크
5
E
헤비 엔지니어링
1
I
인프라
1
O
모바일
3
O
모바일 엔지니어링
1
N
신기술
2
X
운영체제
1
E
실무개발
100
Y
보안
13
L
소프트 스킬
4
E
소프트웨어 공학
1
I
SRE
2
S
시스템 설계
20
T
테스팅
9
W
웹 개발
1
W
웹 개발
7
W
웹 기초
1
Showing 20 of 20
page 1 / 1
Date
Coord
Title
Tags
Read
2026.03.30
S·20
마이크로프론트엔드: 프론트도 분리할 수 있을까?
백엔드는 마이크로서비스로 분리하면서 프론트는 왜 여전히 거대한 모놀리스일까? 마이크로프론트엔드가 해결하는 문제와 실전 적용법을 정리했다.
Micro Frontends
Architecture
Module Federation
—
2026.03.22
S·19
카나리 배포 vs 블루-그린 vs 롤링: 배포 전략 비교
서비스 다운 없이 새 버전을 배포하는 방법은 여러 가지다. 롤링 업데이트, 블루-그린, 카나리 배포의 동작 원리부터 트레이드오프, Kubernetes 구현까지 한 번에 정리한다.
Deployment
Canary
Blue-Green
—
2026.03.09
S·18
CQRS 패턴: 읽기와 쓰기를 분리하면 생기는 일
단일 모델이 복잡해질수록 읽기와 쓰기가 서로 발목을 잡는다. CQRS가 그 문제를 어떻게 해결하는지, 단순한 분리부터 이벤트 소싱까지 TypeScript 예제로 완벽 정리.
CQRS
Design Patterns
Architecture
—
2026.03.06
S·17
Event-Driven Architecture: 비동기 메시지로 서비스 연결하기
요청-응답 방식의 동기 통신이 마이크로서비스에서 어떤 문제를 일으키는지, 그리고 이벤트 기반 아키텍처가 그걸 어떻게 해결하는지 파헤쳐봐. Kafka, RabbitMQ, SQS 비교부터 이벤트 소싱, 최종 일관성 개념까지 Node.js 예제와 함께 정리했어.
Event-Driven
Architecture
Message Queue
—
2026.03.02
S·16
TDD vs BDD: 테스트 주도 개발 전략 비교
TDD와 BDD는 둘 다 '테스트 먼저'라는 철학을 공유하지만, 초점과 사용 방식이 다르다. Red-Green-Refactor 사이클부터 Gherkin 문법까지, 실전 TypeScript 예제로 비교해봤다.
TDD
BDD
Testing
—
2026.01.11
S·15
파일 업로드 시스템: 대용량 파일을 안전하게 처리하기
10MB 이미지 업로드는 됐는데 2GB 동영상은 타임아웃이 났다. 청크 업로드, presigned URL, 그리고 재시도 로직까지 정리한 이야기.
System Design
File Upload
S3
—
2026.01.10
S·14
알림 시스템 설계: 수백만 유저에게 알림 보내기
알림 하나 보내는 건 쉽지만, 알림이 많아지면서 중복 방지, 선호도 관리, 재시도까지 고려하면 완전히 다른 문제가 된다.
System Design
Notification
Architecture
—
2026.01.09
S·13
검색 시스템: Elasticsearch vs 자체 구현
SQL LIKE 검색으로 시작했다가 한계를 느꼈고, Elasticsearch를 도입했다가 운영 비용에 놀랐다. 검색 시스템의 트레이드오프를 정리했다.
System Design
Search
Elasticsearch
—
2026.01.08
S·12
결제 시스템 설계: 돈이 오가는 코드의 무게
결제 API 연동이 끝이 아니었다. 중복 결제 방지, 환불 처리, 멱등성까지 고려하니 결제 시스템이 왜 어려운지 뼈저리게 느꼈다.
System Design
Payment
Architecture
—
2026.01.07
S·11
뉴스 피드 시스템: Push vs Pull 모델
인스타그램처럼 피드를 만들려고 했는데, 팔로워 100만 명인 사람이 글을 올리면 어떻게 되는 걸까? Push와 Pull 모델의 트레이드오프를 정리했다.
System Design
Feed
Architecture
—
2026.01.06
S·10
실시간 채팅 시스템 설계: WebSocket만으로 될까?
1:1 채팅은 쉬웠는데 그룹 채팅, 읽음 표시, 오프라인 메시지까지 고려하니 완전히 다른 문제였다.
System Design
WebSocket
Real-time
—
2026.01.05
S·09
URL 단축 서비스 설계: 쉬워 보이지만 함정투성이
URL 줄이는 거 뭐가 어렵겠어? 했는데, 해시 충돌, 만료 정책, 리다이렉트 성능까지 고려하니 시스템 디자인의 축소판이었다.
System Design
Architecture
Hashing
—
2025.06.18
S·08
CAP 이론: 분산 시스템의 불가능한 삼위일체 (PACELC 포함)
분산 시스템에서 일관성(C), 가용성(A), 분할 내성(P)을 모두 만족하는 것은 물리적으로 불가능합니다. CP(은행) vs AP(SNS) 시스템의 트레이드오프와 최신 PACELC 이론을 다룹니다.
System Design
Database
Theory
—
2025.06.12
S·07
MSA의 문지기, API Gateway: 구현부터 모니터링까지
마이크로서비스 아키텍처(MSA)에서 API Gateway가 필수적인 이유를 '호텔 프론트 데스크' 비유로 설명합니다. Kong, Nginx, AWS API Gateway 비교 및 Rate Limiting, GraphQL 통합, Observability까지 심층 분석.
MSA
API Gateway
Backend
—
2025.06.10
S·06
DB 샤딩(Sharding): 10억 건 데이터를 처리하는 유일한 방법
테이블 하나에 10억 개의 행이 쌓이면 인덱스도 소용없습니다. 수직 파티셔닝(Vertical)과 수평 샤딩(Horizontal)의 차이, 일관된 해싱(Consistent Hashing), 그리고 샤딩의 치명적 단점인 JOIN 문제를 분석합니다.
System Design
Database
Backend
—
2025.06.02
S·05
로드 밸런서: 서버가 100만 명을 버티는 기술 (L4 vs L7 완벽 분석)
트래픽 폭주로 서버가 죽는 것을 막으려면? L4(전송 계층)와 L7(응용 계층)의 차이, 라운드 로빈부터 IP 해시까지의 알고리즘, 그리고 Nginx 실제 설정법을 다룹니다.
System Design
Network
Infrastructure
—
2025.06.01
S·04
DDD (Domain Driven Design): 개발자가 비즈니스 언어를 배워야 하는 이유
DDD는 단순히 'Repository 패턴을 쓰는 것'이 아닙니다. 복잡한 비즈니스 문제를 해결하기 위해 개발자와 기획자가 같은 언어(Ubiquitous Language)를 사용하고, 거대한 시스템을 'Bounded Context'로 나누어 정복하는 전략적 설계 방법론입니다.
Architecture
DDD
Design Patterns
—
2025.05.29
S·03
CQRS 패턴: 읽기와 쓰기를 분리해야 하는 진짜 이유 (Command Query Responsibility Segregation)
대규모 트래픽을 처리하는 시스템에서 데이터베이스의 병목 현상은 피할 수 없는 숙명입니다. 읽기(Query)와 쓰기(Command)의 책임을 물리적으로, 논리적으로 분리하여 성능과 확장성을 극대화하는 CQRS 패턴의 핵심 개념과 적용 전략을 정리합니다.
Architecture
Design Patterns
Microservices
—
2025.05.24
S·02
서킷 브레이커(Circuit Breaker): 분산 시스템의 두꺼비집
집에 누전이 발생하면 두꺼비집이 내려가 전체 정전을 막습니다. 마이크로서비스에서도 한 서비스의 장애가 전체로 전파되는 것을 막기 위해 서킷 브레이커 패턴과 벌크헤드(Bulkhead) 패턴이 필수적입니다.
System Design
Microservices
Resilience
—
2025.05.20
S·01
캐싱 전략(Caching Strategies): 성능 최적화의 꽃
캐시를 어디에, 어떻게 배치해야 할까? Cache-Aside, Read-Through, Write-Back 등 5가지 핵심 패턴과 캐시 스탬피드(Thundering Herd) 현상을 막는 방법을 상세히 다뤄봤습니다.
System Design
Backend
Performance
—
F
컴퓨터과학
190
E
실무개발
100
G
트러블슈팅
30
I
데브옵스
22
S
시스템 설계
20
U
프론트엔드
18
Y
보안
13
M
인공지능
10
T
테스팅
9
B
백엔드
8
W
웹 개발
7
M
AI 엔지니어링
7
A
아키텍처
6
C
커리어
5
U
프론트엔드 프레임워크
5
L
소프트 스킬
4
F
자료구조
3
U
프론트엔드 엔지니어링
3
O
모바일
3
N
신기술
2
C
개발자 성장
2
I
SRE
2
D
데이터베이스
2
B
백엔드 엔지니어링
2
O
모바일 엔지니어링
1
W
웹 기초
1
E
소프트웨어 공학
1
X
운영체제
1
E
헤비 엔지니어링
1
M
인공지능
1
I
인프라
1
W
웹 개발
1
▸ 전체 태그 둘러보기
→