profile
꾸준함 빼면 시체
post-thumbnail

쿠폰 선착순 발급 기능의 동시성 테스트 작성기

@DataJpaTest로 동시성 테스트 및 멀티 스레드 테스트에서 겪은 트랜잭션 가시성 문제

2025년 12월 28일
·
1개의 댓글
·
post-thumbnail

기본 생성자가 없는데 JSON 역직렬화가 된다고?

테스트 강의를 들으며 토이 프로젝트를 진행하던 중 흥미로운 현상을 발견했다. HTTP 요청에서 Java Object JSON 직렬화/역직렬화 과정은 필수적인데, 이전에 Redis 캐싱을 구현하며 겪었던 이슈가 이번에도 생각나 정리를 해보려 한다. 기본 생성자가 없는 DTO 상황은 단순했다. 주문 요청 API를 만들고 있었고 코드는 다음과 같다. @...

2025년 12월 17일
·
2개의 댓글
·
post-thumbnail

회원가입 이메일 발송: 트랜잭션 분리와 아웃박스 패턴 트러블슈팅

회원가입 성공 시 가입 축하 메일을 발송하는 로직을 구현했다. 초기에는 단순한 동기 호출로 시작했지만, 시스템의 결합도를 낮추고 데이터 정합성을 보장하기 위해 점진적으로 구조를 고도화했다. 초기: 이벤트 발행 없는 강결합 로직 개선: '회원가입'과 '메일발송'의 결합

2025년 12월 13일
·
0개의 댓글
·
post-thumbnail

비동기 이벤트 기반 좋아요 시스템 안정화 과정

LG 우승 !! 다음은 첼시?

2025년 11월 1일
·
0개의 댓글
·

JPA 생명주기 콜백과 네이티브 쿼리의 관계

JPA 사용시 엔티티매니저의 역할을 복기할 수 있던 시간

2025년 7월 1일
·
0개의 댓글
·
post-thumbnail

Redis 캐시 도입 후 발생한 문제점과 메시징 큐를 활용한 해결 방안

기존 아키텍처 구조 현재 프로젝트는 아래와 같은 아키텍처로 구성된 상태입니다. Spring Boot ↔ Redis (SET 구조) ↔ MySQL 사용자가 게시글 상세 페이지를 조회하면, 기본적인 게시글 정보(제목, 내용 등)와 함께 좋아요 수도 함께 반환됩니다. 이때 좋아요 수는 실시간성과 성능을 고려하여 RDB가 아닌 Redis의 Set 자료구조를 활...

2025년 6월 26일
·
0개의 댓글
·
post-thumbnail

Redis 유무에 따른 좋아요API 성능 테스트(redis, k6, spring scheduler)

redis 도입 전/후 동시성 이슈 해결 및 성능 최적화

2025년 6월 19일
·
0개의 댓글
·
post-thumbnail

Docker Compose로 모니터링 환경 구축하기 (MySQL, Redis, Prometheus, Grafana)

docker compose 사용하여 모니터링 구축 과정 정리 및 트러블 슈팅

2025년 6월 4일
·
0개의 댓글
·
post-thumbnail

Spring Redis 역직렬화 미친(positive) 삽질기

게시글 조회 캐싱 처리 과정 정리 및 맞닥뜨린 에러 해결 과정

2025년 6월 1일
·
0개의 댓글
·
post-thumbnail

@AuthenticationPrincipal 인증정보 주입

ArgumentResolver가 해결할 수 있는 어노테이션 기반 파라미터 정리.

2025년 5월 24일
·
2개의 댓글
·
post-thumbnail

JWT 인증 구현기(AccessToken, RefreshToken, Redis)

JWT(AT,RT) 적용 및 RT 저장 방식 변경

2025년 5월 20일
·
0개의 댓글
·
post-thumbnail

도메인 모델 설계, 어떤 고민을 했을까?

도메인 모델 설계

2025년 5월 14일
·
0개의 댓글
·
post-thumbnail

프로젝트 개요 및 ERD 소개

프로젝트 전반적인 설계 및 개요

2025년 5월 12일
·
0개의 댓글
·
post-thumbnail

트랜잭션 AOP 주의 사항 및 내부 호출 문제

스프링 트랜잭션 막쓰지 말자

2025년 3월 7일
·
2개의 댓글
·
post-thumbnail

백준 Q16928 - 뱀과 사다리 게임

그래프를 어떻게 만들어야 할까요?

2025년 2월 25일
·
0개의 댓글
·
post-thumbnail

영속성 컨텍스트와 1차 캐시

최근 DB 성능 최적화를 위해 레디스를 학습하며 이전에 알고있던 JPA의 1차 캐시와의 차이점이 뭔지 잘 모르겠어서 다시 영속성 컨텍스트의 기본 개념을 학습하고자 한다 > JPA (Java Persistence API) JPA는 자바 진영에서 ORM 기술 표준으로 사용되는 인터페이스의 모음이다 풀네임에서 알 수 있듯이 Persistence(영속성)를 기...

2025년 2월 8일
·
0개의 댓글
·
post-thumbnail

백준 Q24060 - 알고리즘 수업 - 병합정렬 1

재귀를 활용하여 정렬하는 방법을 배우는 문제

2025년 1월 30일
·
0개의 댓글
·