Spring Security Filter 예외 처리 및 전략
Develop/Spring 2026. 5. 23. 18:56
Spring Security Filter 예외 처리 및 전략

Controller 레벨의 예외 처리는 아래 포스팅을 참고해주시면 됩니다.RFC 9457과 헥사고날 아키텍처로 구현하는 예외 처리 설계서0️⃣들어가며Spring Boot로 REST API를 개발할 때 JWT 기반 인증을 도입하면, 반드시 마주치는 문제가 있습니다. 공들여 설계한 @RestControllerAdvice 기반 예외 처리가 Security Filter에서는 전혀 동작하지 않는다는 점입니다.단순히 "Filter는 DispatcherServlet 앞단이라서"라고 넘기기 쉽지만, 정확히 왜 그런지 구조를 이해하지 못하면 JWT 커스텀 필터를 만들 때 의도치 않은 500 응답을 마주하게 됩니다.이 포스팅은 JWT 커스텀 필터를 사용하는 환경을 전제로, Spring Container와 Servlet C..

RFC 9457과 헥사고날 아키텍처로 구현하는 예외 처리 설계서
Develop/Spring 2026. 5. 21. 21:11
RFC 9457과 헥사고날 아키텍처로 구현하는 예외 처리 설계서

이번 포스팅에서는 사내 웹서비스를 개발하며 예외처리에 대해 고민했던 부분을 정리해봤습니다.참고 포스팅Spring Security Filter 예외 처리 + 전략0️⃣들어가며: 예외 처리에 대한 우리 팀의 고민시스템이 성장하고 아키텍처가 복잡해질수록 '예외를 어떻게 정의하고, 어디서 던지며, 클라이언트에게 어떻게 보여줄 것인가'에 대한 기준이 모호해지곤 합니다. 특히 표준화되지 않은 에러 응답은 프트엔드와의 소통 비용을 증가시키고, 레이어 간 책임이 섞인 예외는 시스템의 결합도를 높입니다.우리 팀 또한 절대적인 시간이 부족한 상태에서 서비스 개발을 진행하는 과정에서 예외 처리에 대한 설계, 컨벤션없이 진행하다보니 점점 복잡해지고 구조 파악에 상당 시간이 드는 것을 체감했습니다.이러한 문제를 해결하기 위해 ..

🧱이벤트 패턴 도입을 통한 도메인 간 결합도 낮추기
Develop/Project 2026. 1. 23. 21:14
🧱이벤트 패턴 도입을 통한 도메인 간 결합도 낮추기

안녕하세요,최근 WeGo 프로젝트에서 다양한 요구사항을 개발하며 늘어나는 도메인 사이의 결합도로 인한 생산성 문제가 있었는데요.이러한 문제를 해결하기 위한 방식으로 도메인 이벤트 패턴(Domain Event Pattern)을 적용하여 결합도를 크게 낮췄던 경험을 공유해보려합니다.정말 체감이 많이 되었던 방식으로 이번 협업에서 생산성을 크게 키워줬던 것 같습니다.서비스 구조적 문제?백엔드팀에서는 각 도메인(패키지) 별로 개발을 진행하고 있었고, 패키지는 아래와 같습니다.notification 도메인은 당연하게도 다른 도메인의 비즈니스 로직에 많이 포함되어 있었고, 동일한 트랜잭션을 사용하고 있었습니다.이로인해 알림의 응답 형식과 같은 변경이 있을 때마다 코드 변경은 어쩔 수 없이 발생했고, 동료가 작성한 ..

SSE(Server-Sent Events) 도입 및 실시간 통신 구현
Develop/Project 2025. 12. 22. 01:38
SSE(Server-Sent Events) 도입 및 실시간 통신 구현

안녕하세요.최근 진행하고 있는 사이드 프로젝트에서 클라이언트측의 기획 요구사항으로 실시간 알림 기능이 개발이 되어야 한다고 요청을 받았습니다.백엔드 진영에서는 해당 요구사항을 위한 기술로 SSE, FCM, Web-Socket 3가지 기술이 언급이 되었고,이 중에서 SSE를 선택하게 되었고 개발을 진행하면서 해당 기술에 대한 학습도 병행하여 정리해보려 합니다.우리 팀은 왜 SSE를 선택하였는지.기술 선택에 앞서 고민했던 포인트는 다양하게 있었습니다. 그 중에서 SSE를 선택하게 된 주요 이유로는 아래와 같아요.첫번째로 MVP 성향의 프로젝트로 단기간 개발이 필요했습니다.전체 프로젝트 기간이 한달도 채 안남은 시점에서 받은 요구사항이였고, 1차 MVP 적용을 코앞에 앞두고 있는 시점에서 제일 빠르게 적용할 ..

카카오페이 단건 결제 API 매핑 이슈
Develop/Project 2025. 2. 25. 18:35
카카오페이 단건 결제 API 매핑 이슈

용어와 관련해서는 아래 공식문서 참조https://developers.kakaopay.com/docs/payment/online/common#term-description 카카오페이 | 개발자센터새로운 기회와 가치를 함께 만들어봐요developers.kakaopay.com 결제 구조위 모식도를 확인해보면 '결제준비 API'과 '결제승인 API' 두 개의 API로 나뉘어져 있는걸 확인할 수 있다. 문제 상황내가 구상했던 흐름은 다음과 같다.클라이언트에서 결제가 필요한 시점에 우리의 서버로 필요한 요청 값을 보내고, 서버에서는 카카오로부터 결제요청API에 대한 응답값을 받아온다. 그 후 서버에서는 tid값을 기반으로 DB에 데이터를 저장하고, 클라이언트에게는 redirec url만 보내주어 결제 프로세스를 ..

image