bedaily.me

Posts

15

Backend2026년 7월 2일29분 읽기

MSA 분산 트랜잭션과 SAGA 패턴 — 이론부터 실습까지

서비스마다 DB를 따로 두는 순간, 모놀리식에서 공짜로 누리던 ACID는 사라진다. 2PC가 왜 안 통하는지부터 SAGA·Outbox·TCC, 그리고 Spring Boot + Kafka로 직접 돌려보는 실습까지 — 이론과 코드를 한 번에 정리한다.

읽기 →

Backend2026년 6월 30일28분 읽기

Elasticsearch 핵심 정리 — 검색은 어떻게 빨라지는가

RDB의 LIKE '%키워드%'로는 한계가 명확하다. 풀스캔, 형태소 무시, 오타 취약, 연관도 없음. Elasticsearch가 이 문제를 어떻게 푸는지 — 클러스터 구조부터 역인덱스, 애널라이저, 한글 검색, 쿼리 DSL, 실전 프로젝트까지 핵심만 정리한다.

읽기 →

Backend2026년 6월 28일43분 읽기

GoF 디자인 패턴, 실제로 적용하기 — Java 백엔드 레퍼런스

23개 GoF 패턴을 실무 코드 냄새에서 출발해 정리합니다. 각 패턴은 동일한 7단계 스키마(증상 · 구조 · 역할 · Before/After · 현대 Java·Spring · 트레이드오프 · 안 쓸 때·헷갈림)로 작성했고, 범주 색(생성=골드·구조=틸·행위=바이올렛)을 시각 언어로 일관 사용합니다.

읽기 →

Java2026년 6월 25일44분 읽기

Spring Data JPA 3와 Hibernate 6로 이해하는 JPA 영속성 아키텍처

JPA는 명세, Hibernate는 구현체입니다. 같은 무대를 두 이름으로 부르는 두 층을 나란히 놓고 전체 스택·런타임 구조·엔티티 생명주기·영속성 컨텍스트·flush·키 생성·N+1·2차 캐시·쿼리 계층·메서드 대응까지 다이어그램으로 정리합니다. 기준은 Spring Data JPA 3 / Hibernate 6.

읽기 →

Backend2026년 6월 24일37분 읽기

Kafka 3.x 아키텍처 완전 정리 — 구조·복제·컨슈머부터 KRaft 전환, 실무 튜닝까지

Kafka를 메시지 큐로만 이해하면 운영에서 반드시 벽에 부딪힌다. 분산 Commit Log라는 본질부터 전체 구조·저장·프로듀서·복제/ISR·컨슈머·전달 보증·Consumer Lag, 그리고 3.x를 정의하는 KRaft 전환과 실무 튜닝까지 다이어그램과 함께 정리한다.

읽기 →

Backend2026년 6월 24일35분 읽기

Redis 완전 정복 — 자료구조부터 모듈까지

메모리 위에서 마이크로초 단위로 답하는 Redis를 한 문서로 정리합니다. String·Hash·Set·ZSet·List·Stream 같은 자료구조부터 Pipeline·Lua·분산락, Pub/Sub·Streams, 그리고 JSON·Search·TimeSeries·Bloom·Graph 모듈까지 명령어와 내부 동작을 다이어그램과 함께 다룹니다.

읽기 →

Java2026년 6월 23일26분 읽기

자바 가비지 컬렉터, 구조와 진화

자바 GC는 하나가 아니라 여러 개가 공존합니다. 먼저 mark·sweep·compact, 세대, barrier 같은 핵심 개념을 그림으로 잡고, Serial부터 ZGC·Shenandoah까지 각 GC의 힙 구조와 수거 방식을 구조도와 함께 정리합니다.

읽기 →

Backend2026년 6월 21일8분 읽기

Spring Batch 6, 아키텍처가 이렇게 바뀌었다

Spring Batch 6은 도메인 모델은 그대로 둔 채 인프라와 실행 모델을 다시 짰습니다. 빈 구성 단순화, Resourceless 기본화, 청크 동시성 재설계까지 실코드와 함께 정리합니다.

읽기 →

Java2026년 5월 15일6분 읽기

Hibernate ORM 7 마이그레이션 — 달라진 것들과 그 이유

Hibernate ORM 7은 10년 넘게 쌓인 구식 API를 정리하고 JPA 표준에 집중하는 방향으로 재정비됐습니다. 가장 많이 마주칠 Breaking Changes와 배경을 정리합니다.

읽기 →

Backend2026년 5월 7일8분 읽기

Spring Boot 4.0 업그레이드 전에 알아야 할 것들

Spring Boot 4.0은 추가된 기능보다 제거된 것들이 더 중요합니다. 업그레이드 전에 반드시 확인해야 할 Breaking Changes와 새로운 표준을 실코드와 함께 정리합니다.

읽기 →

Java2026년 5월 5일16분 읽기

Java 25 LTS 가이드 — 정식 출시된 핵심 기능과 마이그레이션 체크리스트

Java 25는 Java 21 이후 4년 만의 LTS입니다. Scoped Values가 정식 출시됐고 Structured Concurrency는 아직 5차 프리뷰 단계입니다. 한 버전 앞선 Java 24에서 해결된 Virtual Threads 핀닝 문제까지 포함해 22~25 버전대의 핵심 변경사항과 마이그레이션 체크리스트를 정리합니다.

읽기 →

AI2026년 4월 25일3분 읽기

Spring AI로 RAG 파이프라인 구축하기

Spring AI를 사용해 문서를 벡터화하고 LLM과 결합한 Retrieval-Augmented Generation 파이프라인을 Java로 구현하는 방법을 설명합니다.

읽기 →

DevOps2026년 4월 22일3분 읽기

Kubernetes Rolling Update로 무중단 배포 구현하기

Kubernetes의 Rolling Update 전략을 활용해 서비스 다운타임 없이 배포하는 방법과 readinessProbe, preStop 훅 설정을 정리합니다.

읽기 →

Java2026년 4월 20일3분 읽기

Spring Boot 3.x에서 Virtual Threads 활용하기

Java 21 Virtual Threads를 Spring Boot 3.2+에 적용하는 방법과 플랫폼 스레드 대비 성능 비교를 정리합니다.

읽기 →

Backend2026년 4월 14일31분 읽기

Elasticsearch 7 아키텍처 — 검색 엔진의 속을 들여다보다

Elasticsearch는 JSON 문서를 색인해 전문 검색과 집계를 고속으로 수행하는 분산 검색·분석 엔진이다. Index → Shard → Segment로 내려가는 계층 구조와 쓰기·검색 경로, 복제·장애 복구까지 실무 관점으로 정리한다.

읽기 →