푸른영혼의 별 | Tech Blog
Java Backend Engineer의 기술 블로그입니다.
Spring Boot, MSA, JPA, Kafka, Kubernetes 등 실무 경험을 공유합니다.
주요 프로젝트: Settlement MSA · ASAT · GitHub
Posts (총 150편 · 1 / 15 페이지)
-
-
템플릿·콜백·데코레이터 패턴 — *시니어가 *''*'주니어에게*''* 친절하게 풀어보는 Java/Spring 의 *''*'세 가지 변주*''*
’‘‘주니어가 처음 ’‘‘JdbcTemplate’’ 을 만났을 때 — ’‘’‘’
jdbcTemplate.query(sql, rowMapper)’‘’’ 의 ’‘‘두 인자 중 ’‘‘어느 게 ’‘‘템플릿’’ 이고 어느 게 ’‘‘콜백’’ 인지 ’‘‘한 번에 안 보인다’‘’‘. 그리고 *’‘‘2 년 뒤 ’‘‘Spring Security 필터 체인을 디버깅하다가 ’‘’HttpServletRequestWrapper* 를 만났을 때 — ’‘‘그게 ’‘‘데코레이터’‘’’* 라는 걸 ’‘‘배운 적은 있지만 ’‘‘자기 코드와 어떻게 연결되는지* 까지 가는 데 ’‘‘또 ’‘‘한 학기’‘’‘’‘’‘’‘’’* 가 걸린다. 이 ’‘‘세 패턴은 ’‘‘한 가족’‘’‘’‘’‘’‘’‘’‘’‘’’ — ’‘‘모두 ’‘‘Hollywood Principle (’‘‘Don’t call us, we’ll call you’‘’‘) 의 변주다’‘’‘’‘’‘’‘’‘. 시니어가 주니어에게 ’‘‘한 번에*** 풀어보는 글. -
주니어를 위한 프록시 패턴 안내 — *왜* 정적 프록시가 부족했고 *어떻게* 동적 프록시로 진화했으며 *Spring 이* 그걸 어떻게 활용하는가
“왜
@Transactional이 같은 클래스 안에서 호출하면 *안 먹어요?”* -
Scouter · Pinpoint · New Relic · Datadog — 실시간 *TPS (Transactions Per Second)* 확인 방법과 4 도구 비교 (한국 시장 관점)
“우리 서비스 지금 *몇 TPS?”* 는 백엔드 운영의 가장 기본 질문 이다. TPS (Transactions Per Second) = 초당 처리 요청 수. 이 한 숫자가 시스템의 현재 부하 + 한계 + SLO 기준 을 모두 담는다.
-
*3 형제 *마이크로서비스* — *OMS · WMS · LMS* 를 *헥사고날 + GitOps + Outbox 로 *2 일 만에 *0 → 운영*'까지'
’‘마이크로서비스를 제대로 *해본 적이 *있는가?”“. 모든 *시니어 *백엔드가 *한 번쯤 *받는 *질문이다. 책으로 *읽은 *것과 *블로그에서 *본 *것을 *제외하면, *’‘진짜로 돌리고 *진짜로 *상태 추적하고 *진짜로 *서로 *호출 하는 *3 개 이상의 *서비스를 *처음부터 *끝까지 *내가 *세팅 해 본 *경험”” 이 *흔하지 *않다.
이 글은 2 일 *동안 *0 에서 시작해 *3 개의 *물류 마이크로서비스 — OMS (Order Management System), WMS (Warehouse Management System), LMS (Logistics Management System) — 를 *Spring Boot 3.4 + Java 21 + 헥사고날 *아키텍처로 *각자 *별도 *리포에 *짓고, *각자 *전용 *PostgreSQL 을 *띄우고, *K3s 클러스터에 *GitOps 로 *자동 *배포하고, *3 서비스가 *내부 *DNS 로 *서로 *호출 하는 *e2e 시나리오 까지 *검증한 *전 과정의 *기술 회고다.
-
Datadog vs 무료 Observability Stack — 비용·시간 효율의 *손익분기점* 분석 (Prometheus·Grafana·Loki·Tempo·Alertmanager)
Datadog 한 달 청구서 5,000 만원. 스타트업 CTO 들이 2026 년에도 자주 듣는 충격. 그 5,000 만원의 실제 가치 는 얼마인가? Prometheus + Grafana + Loki + Tempo 무료 stack 으로 같은 가시성 을 얻는 데 진짜 비용 (셋업 시간 + 운영 시간 + 클러스터 자원) 은 얼마인가?
-
MySQL DB 안정성 *7대 기둥* — 백업·HA·성능·스키마·모니터링·변경관리·보안
“우리 DB 는 *안정적 이에요”* 라는 문장은 기준이 모호 하다. 어느 누군가에겐 “99.9% uptime” 이고, 또 다른 사람에겐 “매일 슬로우 쿼리 알람 안 옴”. 진짜 DB 안정성 은 7 가지 차원의 합 인데, 한두 개만 잘하고 다른 데 구멍 이 있으면 그 구멍으로 다 무너진다.
-
Java 21 Virtual Threads 실전 사례 5 가지와 Kotlin Coroutines 비교 — 같은 *Continuation* 이 만든 *두 결말*
Java 21 의 Virtual Threads (Project Loom, 2023) 와 Kotlin Coroutines (2018) 는 같은 문제 를 같은 메커니즘 (continuation) 으로 풀지만, 언어 철학 의 차이 때문에 전혀 다른 사용자 경험 을 준다. 둘이 경쟁 인지 상호보완 인지가 2026 년 백엔드 개발자의 핵심 질문.
-
서비스 안정성과 고도화 — *측정 → 자동화 → 회복 → 학습* 루프, 그리고 오늘 logistic-prod / fashion-prod / pg-backup 실전 사고 4 건의 진단 과정
서비스 안정성 (reliability) 과 고도화 (evolution) 는 두 별개의 일처럼 보이지만 본질은 같다 — 반복 가능한 측정·자동화·회복·학습 루프 이다. 안정성 없는 고도화는 사상누각, 고도화 없는 안정성은 정체. 오늘 내 K3s 클러스터에서 4 개 사고 가 동시 발생했고, 그 진단 흐름 자체가 안정성·고도화 루프의 살아있는 교과서 였다.
-
모니터링 5대 도구 비교 — Datadog · Grafana · Prometheus · 제니퍼 · Netdata *언제 어느 것*
“모니터링 뭐 써요?” 의 답이 “우리는 X 써요” 한 단어로 끝나면 위험 신호. 실은 5~10 개 도구가 *서로 다른 층 에서 굴러가야* 한다. 그리고 어느 도구가 어느 층에 맞는지 결정이 비용·운영 부담·SLA 의 80% 를 좌우한다.