모든 태그
태그

Java 기술 블로그 글

Java 태그가 달린 국내 IT 기업 기술 블로그 글을 최신순으로 모았습니다.

전체 135최신 20개 표시
홈에서 필터

최신 게시글

20개 표시

백엔드

모던 백엔드 - 범위값(2)

Java 25의 Scoped Value 설계 원칙과 API 사용 패턴을 정리했습니다. 실무 적용 한계와 전환 판단 기준까지 함께 다뤘습니다.

#Java#동시성#cache
2000

백엔드

모던 백엔드 - 범위값(1)

Java 25의 Scoped Value 등장 배경과 ThreadLocal의 구조적 한계를 설명했습니다. 가상 스레드 시대에 안전한 컨텍스트 공유 방식으로의 전환 필요성을 다뤘습니다.

#Java#동시성#ThreadLocal
4600

백엔드

모던 백엔드 - 병렬처리 리팩토링(2)

구조화된 동시성을 활용해 병렬 API 호출 코드를 리팩토링하는 과정을 다뤘습니다.\n기존 스레드 풀과 CompletableFuture를 정리하고 예외 처리와 테스트까지 확인했습니다.

#Java#동시성#test
3400

백엔드

모던 백엔드 - 병렬처리 리팩토링(1)

게시판 프로젝트의 병렬 API 호출을 CompletableFuture에서 Java 25 구조화된 동시성으로 바꾸는 설계 과정을 다뤘습니다. 취소 전파 문제와 스레드 관리 한계를 테스트로 확인하고 개선 방향을 정리했습니다.

#Java#동시성#비동기
4400

백엔드

모던 백엔드 - 구조화된 동시성

Java 25 프리뷰의 구조화된 동시성을 소개했습니다. 기존 비동기 처리의 한계를 StructuredTaskScope로 어떻게 보완하는지 살펴봤습니다.

#Java#동시성#비동기
3800

백엔드

모던 백엔드 - 마이그레이션

Java 21 기반 게시판 프로젝트를 Java 25 환경으로 옮기는 과정을 다뤘습니다. 호환성 3요소와 Gradle, ByteBuddy, Hibernate 체크 포인트를 함께 살펴봤습니다.

#Java#Spring Boot#Gradle
3800

백엔드

모던 백엔드-Java 25 개관

Java 25의 핵심 변화와 주요 JEP 기능을 소개했습니다. Spring Boot 4와 Spring AI 2.0 환경에서 전환 필요성도 함께 살펴봤습니다.

#Java#동시성#module
10200

백엔드

기술블로그 세 번째 책 《요즘 우아한 백엔드 개발》 출간

우아한형제들 기술블로그 글을 엮은 《요즘 우아한 백엔드 개발》 출간 소식입니다. 아키텍처, 트래픽, 데이터, AI 활용 사례를 현장 경험 중심으로 담았습니다.

#Java#Kotlin#Spring Boot
400

백엔드

모던 백엔드

Java 25, Spring Boot 4, GraalVM Native, Spring AI 2.0을 다루는 Modern Backend 마스터 클래스 오리엔테이션 영상입니다. 기존 Spring Boot 경험자를 대상으로 차세대 백엔드 기술 스택 전환을 안내했습니다.

#Java#Spring Boot#GraalVM
6600

데브옵스

Kubernetes 환경 OOMKilled 원인 분석

Kubernetes에서 발생하는 OOMKilled의 원인과 JVM 메모리 구성을 함께 분석했습니다. Heap뿐 아니라 Non-Heap, Off-Heap까지 고려해 JVM 옵션을 조정하는 방법을 정리했습니다.

#Kubernetes#OOMKilled#JVM
6100

백엔드

모던 백엔드 강좌 소개

2026년 기준 Java 25와 Spring Boot 4.x 중심의 백엔드 변화와 실무 전환 포인트를 소개했습니다. 단일 예제 프로젝트로 마이그레이션 판단과 AI 통합까지 다루는 커리큘럼입니다.

#Java#Spring Boot#GraalVM
8100

아키텍처

Kiro 에이전트와 Harness Engineering: LGU+ Knowledge-based Mass Migration 자동화

LGU+의 대규모 AWS 마이그레이션에서 Kiro와 Harness Engineering으로 전환 작업을 표준화했습니다. 설정 자동화와 지식 자산화를 통해 개발자 편차를 줄이고 재사용성을 높였습니다.

#AWS#Kubernetes#Java
17600

백엔드

Swagger 기반 API 명세 자동화 PoC

고객사 환경 제약 때문에 Swagger를 서비스에 직접 붙이지 않고, 중앙 서버와 YAML 파일로 API 명세를 통합하는 PoC를 검증했습니다. 또한 Custom Annotation 기반으로 배포 시점에 명세를 자동 생성하는 확장 방향도 살펴봤습니다.

#Swagger#Spring Boot#Springfox
49800

백엔드

Vello: 클래스 패스에 없는 외부 이벤트 처리

클래스패스에 없는 외부 이벤트를 역직렬화 실패 없이 원시 형태로 보존하는 `LakeyEventConverter`를 소개했습니다. 대상 토픽 필터링과 중복 제거를 거쳐 `RawEvent`로 저장하는 흐름도 설명했습니다.

#Java#LLM#event
2100

백엔드

돌아오지 않는 메모리를 찾아서

Kubernetes에서 메모리 사용률이 99%까지 오르던 원인을 heap 누수로 의심했지만, JVM committed heap과 로그 파일 page cache가 핵심 원인이었습니다. JVM 옵션 조정과 FILE Appender 제거로 사용률을 크게 낮추고 안정화했습니다.

#Kubernetes#JVM#Java
9100

백엔드

데이터 Backfill을 위한 자원 격리 전략

실시간 트래픽과 백필 트래픽을 분리해 자원 고갈과 DB 스파이크를 막는 구조를 정리했습니다. 전용 큐와 비동기 스레드 풀, 크기 기반 청크 처리로 안정적인 대용량 재전송을 구현했습니다.

#NATS#Java#ConcurrentLinkedQueue
15600

백엔드

의심했던 범인은 알리바이가 있었다.

Jenkins 배치의 5분~12분 Hang 원인을 JFR로 추적해, 의심했던 로그 appender가 아니라 N+1 쿼리와 Aurora 읽기 지연이 범인임을 밝혀냈습니다. 운영 코드 변경 없이 JVM 옵션 한 줄로 진단하고 쿼리 통합으로 문제를 해결했습니다.

#Spring Batch#Jenkins#JFR
10300

아키텍처

되도록 최신 버전을 사용하는게 왜 이렇게 어려울까?

폴리레포에서 버전 관리 자동화를 가능하게 한 Version Family 설계와 전제 조건을 설명했습니다. 빌드 동형성과 단방향 의존 구조가 있어야 최신 버전 수렴이 가능하다고 정리했습니다.

#Gradle#pol리레포#versioning
14400

데브옵스

JVM Heap 설정과 OOMKilled

Kubernetes Pod의 OOMKilled 원인을 Memory Limit만으로 보지 않고 JVM Heap 설정까지 함께 점검했습니다. MaxRAMPercentage를 낮추자 Full GC가 정상 동작하며 재시작 문제가 해소됐습니다.

#Kubernetes#Java#GC
5400

백엔드

OpenHTMLtoPDF 적용 경험

OpenHTMLtoPDF를 검토하고 채택한 이유와 구현 구조를 정리했습니다. 한글 지원, 유지보수성, 보안 처리까지 함께 고려한 PDF 생성 경험입니다.

#Java#PDF#HTML
43600