Circuit Breaker

Circuit Breaker 의 차단 트리거와 회복 전략은 함께 설계되어야 한다. 회복 없는 차단은 의존성을 영구히 끊고, 차단 기준 없는 회복은 무의미한 cycling 이다.

2026년 5월 29일 · 약 5분 읽기

Rate Limiting

Rate Limit 알고리즘을 고르기 전에, 어느 계층에서 보호할지가 먼저 알고리즘의 선택지를 좌우한다. L4/L7/Application 계층과 Token/Leaky/Sliding/Fixed 알고리즘의 교차 관계를 정리한다.

2026년 5월 28일 · 약 4분 읽기

Microservices Architecture

MSA 는 서비스를 어느 축으로 가를 것인가의 결정이다. 도메인, 데이터 소유권, 스케일 패턴, 장애 경계 — 어느 축이 경계를 만들고 통신과 데이터를 차례로 결정한다.

2026년 5월 9일 · 약 6분 읽기

Event Sourcing and CQRS

ES 와 CQRS 는 시스템의 진실(source of truth) 의 형태와 표현(view) 의 분리에 대한 결정이다. 진실의 형태를 바꾸면 시스템 설계 전반이 따라 변하므로, 도입은 비용까지 명시한 결정이어야 한다.

2026년 5월 7일 · 약 6분 읽기

Horizontal vs Vertical Slicing

코드를 기술 계층별로 나누는 수평 분할과, 기능/도메인별로 나누는 수직 분할의 차이를 정리한다. 각각의 장단점과 선택 기준.

2024년 3월 10일 · 약 3분 읽기

Layered Architecture와 의존성 역전

레이어드 아키텍처는 기술적 책임 기준으로 코드를 수평 계층으로 나눈다. 4계층 구조의 각 역할, 의존성 방향 규칙, DIP로 계층 간 결합을 끊는 방법을 정리한다.

2024년 2월 23일 · 약 3분 읽기

Go에서 Hexagonal Architecture 구현

Hexagonal Architecture의 핵심 개념과 Go에서의 관용적 구현. 암묵적 인터페이스와 패키지 구조를 활용한 의존성 방향 제어.

2024년 2월 21일 · 약 5분 읽기

변경분 갱신 캐시 패턴

전량 갱신 방식의 캐시를 변경분만 갱신하도록 전환하는 패턴. 데이터를 성격별로 분리하고 변경 감지 전략을 적용하여 네트워크 비용을 줄이는 구조를 정리한다.

2024년 1월 20일 · 약 3분 읽기