Recently Updated · Blog
All posts →- Payment Platform Project 재고 선차감 캐시 분해 — Redis 샤딩을 전제로 원자성 경계 조정 Aug 22, 2026 → 주문 단위로 실행하던 재고 차감 스크립트를 상품 단위로 분리한 과정을 정리한다. 분산 환경에서 발생하는 원자성 상실과 동시성 문제를 애플리케이션 레벨에서 어떻게 보완했는지 다룬다.
- Payment Platform Project 결제 시스템 MSA 전환기 — 분산 환경의 제약조건과 아키텍처 의사결정 Aug 9, 2026 → 단일 JVM·단일 DB를 전제로 만든 비동기 결제 플랫폼을 4개 마이크로서비스로 분리하면서, DB 분리·서비스별 멱등성·재시도 방식·공통 모듈 배제를 어떤 근거로 결정했는지 다룬다.
- AI-Assisted Development AI 코드 생성의 통제 — 서브에이전트 기반 4단계 워크플로우 Jul 18, 2026 → AI가 임의로 작업 범위를 확장하지 않도록 검토와 구현만 서브에이전트로 격리하는 4단계 워크플로우. 6단계 9페르소나 체계에서 격리 범위를 줄인 개편 과정과, 운영하며 보강해 온 루프 가드까지 정리한다.
- Java System.out.println()의 동작 원리와 로깅 프레임워크 Jun 2, 2026 → System.out.println()이 느린 이유(autoFlush·전역 synchronized·블로킹 IO)를 PrintStream 내부 구현으로 분석하고, FileAppender·AsyncAppender의 버퍼링·비동기·락 차이를 실측으로 비교한다.
- Payment Platform Project 전략 패턴을 통한 결제 게이트웨이 추상화 및 확장성 확보 Apr 14, 2026 → 특정 PG에 강결합된 구조를 전략 패턴과 포트-어댑터 패턴으로 분리하고, PG마다 다른 멱등성 처리를 구현체 내부에서 캡슐화하여 Application 레이어에는 동일한 결과만 노출하는 멀티 PG 아키텍처를 설계한다.
- Payment Platform Project 비동기 결제 처리 플로우 구현 — Outbox 패턴부터 LinkedBlockingQueue Worker까지 Apr 11, 2026 → 토스 페이먼츠 결제 확인 API의 동기 호출이 유발하는 스레드 고갈 문제를 Outbox 패턴으로 해소하고, @Async 기반 구현의 숨겨진 블로킹 함정을 LinkedBlockingQueue + Worker 가상 스레드 아키텍처로 근본 해결하는 과정을 다룬다.
Recently Updated · Docs
All docs →- Node.js Thread Model Aug 28, 2026 → 이벤트 기반 논블로킹 아키텍처와 Thread-per-request 방식의 구조적 차이를 비교하고 워크로드별 적합성을 분석한다.
- Spring JPA (Java Persistence API) Aug 27, 2026 → JPA의 객체 중심 개발 이점과 EntityManagerFactory·EntityManager를 통한 엔티티 관리 방식, Spring Boot에서의 JPA 자동 구성을 정리한다.
- Large-Scale System Transactional Outbox Pattern Aug 26, 2026 → 마이크로서비스 환경에서 DB 상태 변경과 메시지 발행의 원자성을 보장하기 위한 Transactional Outbox 패턴을 설명한다.
- Spring Persistence Context Aug 26, 2026 → JPA 영속성 컨텍스트의 엔티티 생명주기와 1차 캐시, 변경 감지(Dirty Checking), 쓰기 지연 저장소의 동작 원리를 분석한다.
- MySQL Sub Query Aug 24, 2026 → MySQL 8.0 옵티마이저의 서브쿼리 최적화 방식과 스칼라·IN·EXISTS 서브쿼리의 JOIN 변환 전략을 분석한다.
- Computer Architecture Memory Aug 23, 2026 → 메모리 계층 구조와 논리/물리 주소 변환, MMU의 역할, 캐시 지역성 원리를 분석한다.
- Network Connection Aug 23, 2026 → HTTP 커넥션 관리 모델인 단기·지속·파이프라인 커넥션의 동작 방식과 성능 지연 원인을 비교 분석한다.
- Java CompletableFuture Aug 19, 2026 → 기존 Future의 한계를 극복하는 CompletableFuture의 논블로킹 콜백 구조와 주요 체이닝 기법 및 예외 처리 방식을 정리한다.
- Java Class Loader Aug 18, 2026 → 클래스로더의 위임 모델 메커니즘과 동작 원리, ClassNotFoundException 및 NoClassDefFoundError의 차이점과 트러블슈팅 방법을 정리한다.
- Java Collections Aug 17, 2026 → Java 컬렉션 프레임워크의 List·Set·Queue 계층 구조와 ArrayList·LinkedList·HashSet 등 주요 구현체의 특징을 비교한다.
- Java JVM Troubleshooting Aug 17, 2026 → 프로덕션 환경에서의 OOM 트러블슈팅, 힙 덤프 및 스레드 덤프 분석 기법, 데드락 추적 및 JVM 병목 진단 방법을 정리한다.
- Java Thread Aug 17, 2026 → Java 스레드의 생명주기와 상태 전이, ExecutorService 기반 스레드 풀 관리, Callable·Future를 통한 비동기 결과 수집을 정리한다.
- Operating System IO Models (Blocking/Non-blocking, Sync/Async) Aug 15, 2026 → 애플리케이션과 커널 간의 I/O 처리 방식인 Blocking/Non-blocking과 Sync/Async의 개념, 작업 단계별 차이점 및 내부 메커니즘을 깊이 있게 비교한다.
- Network Load Balancing Aug 14, 2026 → 로드밸런서의 개념과 L4/L7 구분, 역할(부하 분산·고가용성·확장성), 정적·동적 분산 알고리즘과 P2C·안정 해싱, 클라이언트 사이드 로드밸런싱까지 정리한다.
- AI AI Coding Agent Ecosystem & Open-Source Tools Aug 10, 2026 → AI 코딩 에이전트의 성능을 극대화하고 개발 워크플로우를 체계적으로 개선하기 위한 주요 오픈소스 프로젝트 8가지를 분석한다.
- Java Garbage Collection Aug 9, 2026 → JVM 가비지 컬렉션의 세대별 이동 단계와 Full GC 예방 전략, java.lang.ref 패키지를 활용한 객체 참조 제어 기법을 정리한다.
- Java Map Aug 9, 2026 → Java Map 인터페이스의 키-값 저장 구조와 HashMap·LinkedHashMap·TreeMap의 내부 구현 방식과 성능 특성을 비교한다.
- MySQL Isolation Level Aug 9, 2026 → 트랜잭션 격리 수준 4단계의 더티 리드·반복 불가능한 읽기·팬텀 리드 발생 조건과 MySQL MVCC 기반 동작 방식을 분석한다.
- Network HTTPS (HyperText Transfer Protocol Secure) Aug 9, 2026 → HTTPS의 TLS 핸드셰이크 동작 원리, 대칭키·비대칭키 혼용 방식, CA 인증서 검증 절차를 분석한다.
- Network Transport Layer - TCP/IP Layer 3 Aug 9, 2026 → TCP의 3-Way/4-Way Handshake, 흐름 제어, 혼잡 제어, ARQ 오류 제어 메커니즘과 UDP와의 차이를 분석한다.
- Operating System Synchronization Aug 9, 2026 → 프로세스 동기화의 핵심 개념인 임계 구역과 경쟁 상태 문제를 설명하고 뮤텍스 락과 세마포의 동작 방식 및 차이점을 비교한다.
- Spring AOP (Aspect-Oriented Programming) Aug 9, 2026 → AOP의 핵심 용어와 JDK 동적 프록시·CGLIB의 차이점, @Aspect 어드바이스 종류, 자기 호출 문제의 원인과 해결 방법을 분석한다.
- Spring Dependency Injection Aug 9, 2026 → 스프링의 의존성 주입 매칭 우선순위와 컬렉션 주입 활용법, 생성자 주입의 순환 참조 조기 검출 및 불변성 보장 원리를 분석한다.
- Spring Filter & Interceptor Aug 9, 2026 → 서블릿 Filter와 Spring Interceptor의 동작 범위·실행 시점을 비교하고 preHandle·postHandle·afterCompletion의 활용 패턴을 정리한다.
- MySQL Partitioning Aug 8, 2026 → MySQL 파티셔닝의 동작 원리와 Range·Hash 파티셔닝의 트레이드오프, 그리고 샤딩과의 차이점을 면접 및 실무 관점에서 분석한다.
- MySQL B-Tree Index Aug 7, 2026 → B-Tree(B+ Tree) 인덱스의 리프 노드 구조와 인덱스 스캔 방식, 자료형이 트리에 미치는 영향을 분석한다.
- Redis Basic Aug 7, 2026 → In-Memory 데이터 저장소인 Redis의 싱글 스레드 아키텍처, 다양한 자료구조 지원, Replication과 Sentinel·Cluster를 통한 고가용성 기능 등 핵심 특징을 정리한다.
- Redis Data Structure Aug 7, 2026 → Redis가 지원하는 String, List, Hash, Set, Sorted Set, Bitmaps, HyperLogLog, Geospatial, Stream 자료구조의 내부 동작 방식과 주요 명령어를 정리한다.
- Java Virtual Thread Aug 6, 2026 → Java 21의 가상 스레드 경량 모델의 JVM 스케줄러 기반 동작 방식과 플랫폼 스레드와의 차이, 구조적 동시성을 설명한다.
- Spring Spring Boot Auto-Configuration, Instrumentation and Sampling Jul 1, 2026 → 스프링 부트가 의존성 추가만으로 Tracer·SpanExporter 빈을 자동 구성하고 ServerHttpObservationFilter·WebClient·DataSource·Kafka에 자동 계측 hook을 거는 방식, management.tracing 프로퍼티, @Observed 커스텀 Span, Head·Tail 샘플링과 ParentBased Sampler까지 발신 측 의사결정을 다룬다.
- Spring Distributed Tracing in Spring: Propagation and Stack Jun 29, 2026 → 서비스 경계를 넘는 추적 컨텍스트 전파를 위한 W3C Trace Context와 B3 헤더 규격, HTTP·gRPC·Kafka에서 inject·extract가 일어나는 지점, Micrometer Observation API와 Tracer Bridge(Brave·OpenTelemetry) 선택 기준, OpenTelemetry SDK 컴포넌트의 역할을 다룬다.
- Secure Digital Cryptography Basic Jun 19, 2026 → 대칭키·공개키 암호법과 RSA의 암호화·복호화 동작 원리, 하이브리드 암호화(TLS), 디지털 서명과 X.509 인증서까지 디지털 암호학의 기본 개념을 설명한다.
- Java Stack, Queue, Deque Jun 15, 2026 → 스택·큐·덱의 입출력 원칙과 활용을 비교하고, Java에서 레거시 Stack 대신 ArrayDeque를 권장하는 이유를 구현 원리로 설명한다.
- Network CORS (Cross-Origin Resource Sharing) Jun 10, 2026 → 동일 출처 정책(SOP)이 막는 위협과 CORS가 이를 안전하게 완화하는 원리를, 단순 요청·Preflight·인증 정보 요청 시나리오와 와일드카드 금지 이유까지 정리한다.
- Large-Scale System Deployment Strategies Jun 9, 2026 → Recreate, Rolling, Blue-Green, Canary 등 무중단 배포 전략의 동작 방식과 트레이드오프를 비교하고, 배포와 릴리스의 분리 및 스키마 호환 마이그레이션까지 다룬다.
- Large-Scale System Inter-Service Communication Protocols Jun 9, 2026 → REST, gRPC, Message Queue 등 서비스 간 통신 프로토콜의 전송 방식과 직렬화 메커니즘을 비교하고, 각 방식의 선택 기준을 정리한다.
- Large-Scale System Monolithic & Microservices Architecture Jun 9, 2026 → 모놀리식과 마이크로서비스(MSA) 아키텍처의 구조적 차이와 각각의 장단점을 비교하고, 전환 시 고려사항을 다룬다.
- Large-Scale System Timeout & Retry Jun 9, 2026 → 분산 환경에서 개별 호출의 실패에 대응하는 타임아웃과 재시도 전략을 다루고, 지수 백오프·지터·재시도 예산으로 재시도 폭풍을 제어하는 방법을 설명한다.
- Operating System Kernel May 28, 2026 → 운영체제의 핵심인 커널의 역할과 이중 모드 동작 원리를 설명하고 시스템 호출·시그널 처리 흐름을 분석한다.
- Operating System Virtual Memory May 28, 2026 → 가상 메모리의 페이징 기법과 페이지 테이블을 통한 주소 변환, 요구 페이징·페이지 폴트 처리와 그 다양한 활용까지 분석한다.
- Java JVM JIT Compiler May 26, 2026 → HotSpot JIT의 Mixed Mode와 Hot Method Detection, C1/C2 계층 컴파일, Code Cache, Deoptimization, 주요 최적화 기법, Warm-up 전략을 정리한다.
- Operating System Introduction May 23, 2026 → 운영체제의 본질적 역할인 자원 관리와 인터페이스 제공자로서의 기능을 분석하고 시스템 계층 구조를 정리한다.
- Spring Spring Logging Stack with MDC and Structured Logging May 20, 2026 → Spring Boot의 SLF4J + Logback 로깅 스택과 ThreadLocal 기반 MDC, TaskDecorator·Reactor Context·가상 스레드 환경에서의 컨텍스트 전파, LogstashEncoder JSON 인코딩과 OpenTelemetry semantic convention에 맞춘 키 표준화까지 운영 수준 로깅 구성을 정리한다.
- Spring Observability Foundations: Signals and End-to-End Pipeline May 19, 2026 → 관측성을 구성하는 Logs·Metrics·Traces 세 신호의 정의와 상호보완 관계, OpenTelemetry가 정의하는 시그널 데이터 모델, Trace·Span·Context·Baggage 구조, 그리고 신호 한 줄이 애플리케이션에서 시각화 도구까지 도달하는 End-to-End 파이프라인을 다룬다.
- Spring Spring Cloud Config Server May 18, 2026 → Git 저장소 기반의 중앙 집중식 설정 서버와 @RefreshScope의 CGLIB 프록시 메커니즘, Spring Cloud Bus를 활용한 팬아웃 브로드캐스팅으로 설정 변경을 무중단 전파하는 동적 리프레시 아키텍처를 분석한다.
- Spring Spring Cloud Resilience (Resilience4j) May 18, 2026 → Resilience4j의 데코레이터 기반 결함 내성 설계와 비트셋 슬라이딩 윈도우 기반 서킷 브레이커 내부 구현, Bulkhead·RateLimiter·Retry 등 고급 장애 격리 패턴의 동작 원리를 분석한다.
- Spring Beans May 17, 2026 → 스프링 빈의 BeanDefinition 메타데이터와 생명주기 관리 원리, @Configuration의 CGLIB 프록시 싱글톤 보장, 싱글톤과 프로토타입 간 스코프 불일치 문제 및 해결 방안을 분석한다.
- Java Annotation May 16, 2026 → Java 어노테이션의 동작 원리와 @Retention 정책별 생명주기, 런타임 리플렉션 및 컴파일 타임 어노테이션 프로세서 처리 방식, Lombok의 AST 조작 메커니즘과 @Data 사용 시 주의점을 분석한다.