Tech
기술 블로그
MDX로 기록한 글과 작업 로그를 한 곳에 모아두는 공간입니다.
AllAIAPIAPI DesignArchitectureAuthenticationBackendBlogChecklistCI/CDCode QualityCollaborationConcurrencyDatabaseDeploymentDevOpsDocumentationEvent-DrivenException HandlingFrontendGitHub ActionsIndexJavaJPAJWTKafkaLoggingMDCMonitoringMulti-ModuleNext.jsNginxObservabilityOpenTelemetryOperationsPaginationPerformanceProductivityReactRedisRefactoringResponseREST APISentrySEOSpring BootSpring SecurityTestcontainersTestingTransactionTroubleshooting

2026년 7월 9일
Java 25 StructuredTaskScope로 여러 API 병렬 호출을 하나의 작업 단위로 묶기
Java 25 구조적 동시성(JEP 505, 5차 프리뷰)의 StructuredTaskScope와 Joiner API를 직접 예제로 돌려보며, 여러 외부 API 병렬 호출의 에러 전파·취소·관측성을 개선한 과정을 정리합니다.
JavaConcurrencySpring Boot

2026년 7월 6일
Spring Boot 4 AOT Repositories로 앱 시작 시간 줄이기 — 쿼리 파싱을 빌드 타임에
Spring Data JPA 4.0의 AOT 리포지토리가 쿼리 메서드를 빌드 타임에 미리 만들어 시작 시 리플렉션 파싱을 없애는 원리를, 공식 문서와 예제를 직접 돌려보며 정리했습니다.
Spring BootJPAPerformance

2026년 4월 11일
Spring Boot Virtual Threads 실무 적용기 — WebFlux 없이 높은 동시성을 달성한 경험
Spring Boot 4에서 기본이 된 Virtual Threads를 실무에 적용하면서, 기존 WebFlux 코드를 블로킹 스타일로 전환하고도 높은 동시성을 달성한 과정과 주의할 점을 정리합니다.
Spring BootConcurrencyPerformance

2026년 4월 6일
App Router 렌더링 성능 최적화: Server Component와 Client Component의 적절한 경계 찾기
빠를 줄 알았던 Next.js App Router 환경에서 체감 로딩이 느려진 원인을 파악하고, 서버 컴포넌트와 클라이언트 컴포넌트를 적절하게 분리하여 TTI(Time To Interactive)를 개선한 기록입니다.
Next.jsFrontendPerformance

2026년 4월 2일
인덱스를 추가하기 전에 먼저 확인했던 조회 패턴
쿼리가 느리다고 바로 인덱스를 추가하기보다, 어떤 조회 패턴에서 병목이 생기는지부터 확인해야 했던 이유를 실무 기준으로 정리했습니다.
DatabaseIndexPerformance

2026년 3월 24일
Redis 캐시를 붙이기 전후 성능 비교
상품 상세와 홈 추천 목록에서 반복 조회가 많아진 시점에 Redis 캐시를 붙였고, 응답 시간과 DB 부하가 어떻게 달라졌는지 정리한 기록입니다.
RedisSpring BootPerformance