Spring Boot Seata로 분산 트랜잭션 처리하기 — AT 모드 실전 적용까지
Apache Seata와 Spring Boot를 연동하여 마이크로서비스 환경에서 분산 트랜잭션을 처리하는 방법을 AT 모드 중심으로 정리한다.
배움의 즐거움, 나눔의 가치를 실천하는 DevLog
Apache Seata와 Spring Boot를 연동하여 마이크로서비스 환경에서 분산 트랜잭션을 처리하는 방법을 AT 모드 중심으로 정리한다.
Spring Boot 3.x에서 4.0으로 마이그레이션할 때 반드시 알아야 할 변경사항과 단계별 전환 전략을 정리한다.
Spring Boot 4가 제공하는 네이티브 API Versioning 자동 구성을 4가지 전략별 실습 코드와 함께 정리한다.
Spring AI 1.1.3이 제공하는 MCP Boot Starter로 AI 모델과 외부 도구를 표준 프로토콜로 연결하는 서버·클라이언트 구현 방법을 정리한다.
Spring Boot 3와 Spring Security 6.x에서 Spring Security JWT 인증을 처음부터 완성까지 단계별로 구현한다.
Spring Boot 애플리케이션을 Docker로 패키징하고 docker-compose로 데이터베이스와 함께 실행하는 전체 배포 흐름을 정리한다.
Spring Boot Security와 JWT를 연동하여 인증/인가 시스템을 구현하는 전체 흐름을 실무 코드 중심으로 정리한다.
Spring Boot 애플리케이션은 tomcat, jetty, undertow와 같이 여러 내장 서버를 사용할 수 있지만 디폴트 내장 서버는 tomcat을 사용한다. tomcat 내장 서버를 바로 사용할 수 있는 기본 구성 세트가 있지만 속성 또는 yaml 파일을 이용하여 내장 톰캣 서버를 구성하고 기본 설정을 변경할 수 있다. 이번 포스팅에서는 Embedded Tomcat Server Config에 대해서 간단히 정리하고자 한다.
Spring Data MongoDB 자동 구성과 함께 application.yml 에서 mongodb 관련 설정 몇가지를 알아보고 연결 설정을 제어하는 몇가지 방법에 대해서 정리하고자 한다.
외부 서버의 REST API를 호출할 때 RestTemplate, WebClient나 RestClient(Spring Boot 3.2)를 사용하는 것이 일반적이다. 이러한 클라이언트는 요청 메서드, URI, 헤더, 응답 매핑 등을 직접 작성해야 하므로 반복 코드가 많아졌다. HTTP Interface는 이러한 문제를 해결하기 위해 Spring Framework 6부터 등장한 개념이다. 단순히 Java 인터페이스에 어노테이션(@HttpExchange, @GetExchange, @PostExchange)을 붙이면 Spring이 자동으로 구현체(Proxy)를 생성해 WebClient 혹은 RestTemplate, RestClient 기반으로 HTTP 요청을 수행할 수 있다.