Development/MSA (1) 썸네일형 리스트형 Transactional Messaging Messaging 서비스에서 데이터를 변화시킴에 따라, 두가지 액션이 일어납니다. 데이터의 상태 변화 데이터 변화에 대한 전파 이 두 액션은 한 트랜잭션 내에서 Atomic하게 처리되지 않으면 애플리케이션 안정성이 떨어집니다. 하지만 메시지 브로커는 DB 트랜잭션을 함께 사용할 수 없습니다. 그렇다면 데이터 변화와 메시지 발행을 확실하게 보장하려면 어떻게 해야하느냐. Transactional Outbox Pattern 기존 서비스 Outbox 역할을 하는 테이블을 생성하고, 상태를 변화시키는 트랜잭션의 일부로 OutBox 테이블에 메시지를 Insert 시키는 것입니다. 이렇게 하면 하나의 DB 트랜잭션 내에서 Atomicity 는 보장이 됩니다. Message Relay Outbox 테이블은 메시지 발행.. 이전 1 다음