작성
·
5
0
안녕하세요.
강의 잘 듣고 있습니다.
현재 Orchestration SAGA가 방식은 전부 동기식을 되어 있어 성능 문제가 있을거라고 생각합니다.
그래서 OrderCoordinator에서 동기식이 아닌 비동기식으로 변경해도 OrderCoordinator에서 제어하니까 Orchestration SAGA패턴으로 볼수 있는건가요??
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 정인호님.
Orchestration SAGA 패턴에서 성능 문제를 고려하여 비동기식을 도입하는 것은 매우 합리적인 접근입니다. SAGA 패턴의 핵심은 트랜잭션 상태를 만나는 모든 서비스들이 일관성을 유지하면서도 각각의 로컬 트랜잭션을 성공적으로 수행하게 하는 것입니다.
OrderCoordinator에서 동기 호출 대신 비동기 메시징을 도입하더라도, 여전히 전체 프로세스를 제어하고 있다면 Orchestration SAGA 패턴으로 간주할 수 있습니다. 비동기 방식으로 전환하면 트랜잭션의 일부가 실패했을 때 메시지를 수신 대기하는 등의 대책이 필요할 수 있습니다. 이는 이벤트 드리븐 아키텍처와 유사해질 수 있지만, Orchestration SAGA의 개념은 유지됩니다.
이와 관련들어 예전에 다루었던 비슷한 질문이 있습니다. 아래의 링크를 통해 참고하시면 좋을 것 같습니다:
비동기적인 접근 방식은 확장성과 성능 향상을 위해 매우 유익할 수 있으며, 특히 서비스 간의 응답 시간이 중요한 경우 큰 도움이 됩니다. 하지만, 복잡성이 증가할 수 있기 때문에 Tracing, 로깅, 메시지 재전송 등의 고려가 필요할 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.