왜 이벤트를 발행해야 하나? MSA의 특징중에 하나는 Database per Service이다. 즉, 서비스 각각이 자체 DB를 가지고 있다는 것이다. 이를 통해, 서비스들은 서로 느슨한 결합을 유지하게 된다. 또한 다른 서비스가 DB 락을 획득하여 서비스를 블로킹하는
이전 글 \[1편] MSA 이벤트 발행 - 이론MSA에서 비지니스 객체의 변경에 대한 이벤트를 발행할 때, 비지니스 객체 변경과 이벤트 발행이 하나의 트랜잭션으로 실행되어야하는 이유를 설명했다. 또한 이를 위한 방법으로 Outbox 패턴을 소개했다.References
이전글 > [2편] MSA 이벤트 발행 - 구현 > Outbox 패턴을 적용하여 비지니스 객체 변경과 이벤트 발행이 하나의 트랜잭션으로 동작하는 강의 서비스 애플리케이션을 구현했다. 지난 글에서 debezium을 이용하여 OUTBOX에 쓴 메시지를 kafka 메시지