목록Tech/Spring (45)
우당탕탕
저도 Spring Boot 프로젝트에 Redis 캐싱을 적용하다 보니 설정 방법에 따라 성능 차이가 꽤 확연하더라고요. 특히 여러 가지 캐싱 전략과 라이브러리, 그리고 세부 옵션들 때문에 삽질이 이만저만이 아니었어요. 이 글에서는 제가 직접 구현하고 테스트한 사례와 다른 개발자들 사례를 비교해 보면서 어떤 설정이 실제로 효과적이었는지 정리해봤습니다.기본적인 Spring Boot Redis 캐싱 세팅부터 Lettuce vs Jedis 클라이언트, 그리고 TTL 설정과 캐시 직렬화 방법에 따른 성능 차이까지 다뤄볼 예정입니다. 코드 예시는 물론이고, 벤치마크 결과와 경험치 위주로 풀어서 설명할게요.개발 환경 / 버전 정보제가 사용한 개발 환경은 Java 17, Spring Boot 3.2 입니다. Redis..
저도 처음에 JPA Auditing이라는 걸 들었을 때, 솔직히 뭔 말인지 하나도 몰랐거든요. 프로그래밍하면서 엔티티(저장되는 데이터 객체)에 생성 시간이나 수정 시간을 일일이 기록하는 게 얼마나 번거로운지 직접 겪고 나서야, 자동으로 해주는 기능이 있다는 걸 알게 됐어요. 이번에 실제로 프로젝트에 적용하면서 겪은 삽질과 그 해결 과정을 공유하려고 합니다.이 글에서는 JPA Auditing이 뭔지, 왜 필요한지부터 시작해서, 직접 설정하고 사용하는 법, 그리고 중간에 만난 문제들과 해결 팁까지 차근차근 설명할게요. 덕분에 나중에 여러분도 작업할 때 헷갈리지 않고 쓸 수 있을 거예요.제가 쓴 개발 환경 / 버전 정보사실 이 부분이 제일 중요한데요, 저도 모르는 버전 문제 때문에 한참 고생했거든요. 제가 쓴..
Spring Boot 프로젝트에 Querydsl을 도입하다 보니 생각보다 삽질을 많이 했어요. 공식 문서만 보면 간단할 것 같은데, 실제로는 환경 설정부터 코드 작성, 빌드 문제까지 헷갈리는 부분이 한두 가지가 아니더라고요.그래서 제가 직접 부딪히면서 해결한 경험을 토대로, Spring Boot에서 Querydsl 도입할 때 독자분들이 가장 많이 검색하는 질문 8개를 모아 꼼꼼히 답해봤어요. 이 글 하나만 읽으면 Querydsl 도입과 활용에 관한 걱정은 다 덜 수 있을 거예요.개발 환경 / 버전 정보제가 사용한 환경은 Java 17, Spring Boot 3.1.4, 그리고 Querydsl 5.0.0 입니다. Maven을 빌드 도구로 사용했고, JPA는 Hibernate 기반이었어요.Spring Boo..
처음에 Spring WebFlux를 도입했을 때 정말 삽질을 많이 했어요. 문서 읽을 때는 ‘리액티브로 하면 좋다더라’ 정도만 알았는데, 직접 코드를 짜면서 막히고 에러 뜨고, 개념이 헷갈려서 몇 번을 다시 고치고 다시 했거든요. 특히 Flux와 Mono, 그리고 스케줄러 개념이 제대로 머리에 잡히질 않아서 시간을 엄청 썼죠.이 글에서는 제가 실제로 코딩하면서 마주쳤던 헷갈림, 실수 사례들을 중심으로 어떻게 해결했는지 상세히 공유할게요. 그래서 WebFlux 처음 도입하는 분들이 저처럼 삽질하지 않도록 도와드리고 싶었어요.개발 환경 / 버전 정보저는 Java 17에 Spring Boot 3.1.3 버전으로 작업했어요. 리액티브 스택을 완벽히 지원하는 버전이고, Reactor 3.x가 내장되어 있습니다.S..
저도 처음엔 Spring Cloud Gateway라는 용어부터 생소했어요. 사실, API 게이트웨이라는 개념도 뭐가 뭔지 감이 잘 안 왔거든요. 그런데 회사 프로젝트에 이걸 도입하면서 라우팅 관련해서 여러 문제가 생기고, 직접 부딪혀서 해결하는 과정에서 알게 된 내용을 정리해 봤습니다.이 글에서는 초보자 입장에서 Spring Cloud Gateway가 뭔지, 왜 쓰는지부터 시작해서, 제가 개발하면서 겪었던 라우팅 이슈들, 그리고 그 해결법을 사례 위주로 풀어갈게요. 코드 예시도 한 점씩 넣어서 이해하는 데 도움되도록 최대한 쉽게 썼습니다.Spring Cloud Gateway와 API 게이트웨이, 이게 뭔데요?사실 이 부분이 처음 접하는 분들한테 가장 헷갈리는 개념인 것 같아요. 간단히 말하면, API 게..
JPA Auditing 기능을 도입해서 엔티티의 생성 시간과 수정 시간을 자동으로 기록하는 작업을 했는데요, 이걸 구현하다 생각보다 삽질을 많이 했어요. 특히 비용 면에서 어떤 차이가 나는지 파악하는 게 꽤 중요해서 실제로 비슷한 기능을 직접 만들어본 경험과 비교하면서 작성하게 됐습니다.이 글에서는 JPA Auditing 기본 설정부터, 자동화 과정에서 발생한 구체적인 비용 차이 비교, 그리고 제가 직접 겪은 문제와 해결법까지 모두 담았어요. 숫자와 표로도 비교해서 '이게 과연 비용 절감에 얼마나 도움이 될까?' 하는 의문을 확실히 풀어드릴게요.개발 환경 / 버전 정보이번 프로젝트는 Java 17, Spring Boot 3.2 기반이에요. JPA는 Hibernate 6를 사용했고, MySQL 8.x 버전..
