서비스 계층 @Transactional 관련 질문
475
작성한 질문수 12
안녕하세요 선생님,
서비스 계층의 트랜잭션 처리와 관련해 질문이 있습니다.
보통 모놀리식 형태의 웹 어플리케이션의 경우 서비스 계층에 @Transactional을 이용해 트랜잭션 처리를 해주는 것으로 알고 있습니다.
하지만 이번 마이크로서비스 강의에서 나오는 유저 서비스, 오더 서비스, 카탈로그 서비스 모두 @Transactional이 사용되지 않고 있는데 문제가 전혀 없는 것인지 궁금합니다.
답변 2
3
안녕하세요, 이도원입니다.
MSA에서 트랜잭션 간의 데이터 동기화를 위해서 Saga 패턴과 같은 방법으로 처리하실 수 있습니다. 말씀하신 것처럼 여러 서비스 간에 동기화된 데이터를 사용해야 하기 떄문에, 하나의 통합된 데이터베이스(공유 데이터베이스)를 사용하여 데이터를 처리하시거나, 아니면, 데이터베이스를 분리하더라도 롤백 처리가 필요한 부분에서 보상 트랜잭션 또는 모든 데이터들의 롤백 등과 같은 방법으로 이전 데이터를 복원해 주는 방법 등을 사용할 수 있습니다. 본 강의에서는 MSA 패턴 및 데이터에 대한 트랜잭션 처리 방법에 대해서는 다루지 않았었습니다.후속 강의로 준비 중인 내용은 다음과 같습니다.
- MSA 주요 패턴 (Event Souring, SAGA, CQRS ...)
- Service Mesh 기능의 활용
- CI/CD
감사합니다.
0
안녕하세요. 거의 1년이 지났지만 다른 분들 도움이 되실거 같아서 제 생각으로 답변드립니다. 강의를 보다가 저도 문득 궁금해서 CrudRepository 가 어떻게 돌아가는지 디버깅해봤습니다. 그러다 보니 CrudRepository의 구현체로 SimpleJpaRepository 의 save를 호출하는 것을 발견했고 해당 메서드에 @Transactional이 붙어있어서 서비스 계층에서 @Transactional이 없어도 동작했던 것입니다.

kafka 업데이트 강의 듣고 시포요
0
85
1
강의 교안
0
75
1
마이크로서비스간 통신 시, 인증 처리
0
79
1
api gateway 에서 인증 처리
0
66
1
섹션 19 질문드립니다
0
54
1
강의 자료 업데이트
0
84
1
부하분산 강의 섹션
0
57
1
강의자료는 어디에서?
0
72
1
강의 자료는 어디서 다운 받을 수 있나요?
0
110
1
전체 사용자 조회시 오류
0
59
1
혹시 pk 외 별도의 id 를 부여한 이유가 있을까요 ??
0
113
2
학습 방향
0
96
2
카프카 커넥터 사용 목적 문의
0
86
2
kafka 강의
0
109
2
서비스 디스커버리 종류
0
87
2
강의 자료에 대해서 궁금해요
0
117
2
GlobalFilter, LoggingFilter가 동작하지 않습니다.
0
90
2
Kafka Source Connect 버전 에러
0
85
2
소스커넥터는 사용안한 거 맞죠?
0
81
2
강의자료 업데이트 문의
0
96
2
강의에서 BCryptPasswordEncoder 에 역할(5-2)
0
57
1
강의 업데이트 계획이 궁금합니다.
0
113
2
MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)
0
163
2
어떤 것이 업데이트 된 건가요?
0
164
2





