본문 바로가기
백엔드

메시지 브로커 / 이벤트 브로커

by 작은소행성 2022. 4. 26.

이벤트 기반 MSA 를 공부하면서 알고 가야하는 개념이다. 

 

메시지 브로커 

publisher 가 생산한 메시지를 메시지 큐에 저장하고, 저장된 데이터를 consumer 가 가져갈 수 있도록

중간 다리 역할을 해주는 브로커이다. 

대규모 엔터프라이즈 환경의 미들웨어로서의 기능을 한다. 

consumer 가 큐에서 데이터를 가져가게 되면 메시지 처리 후 바로 혹은 짧은 시간내에 데이터가 삭제된다. 

필요할때마다 큐에 담아놓고 사용하기 때문에 주로 캐시로 많이 사용된다. 

 

메시지 브로커에는 Redis, RabbitMQ 가 있다. 



 

 

이벤트 브로커 

메시지 브로커의 큐 기능을 가지고 있고 추가로 이벤트 별로 관리가 가능하다. 

이벤트 브로커는 publisher가 생산한 이벤트를 이벤트 처리 후 바로 삭제하지 않는다. 

이벤트 시점이 저장되어 있어서 특정 시점부터 이벤트를 다시 접근할 수 있으며 

장애가 어디에 났는지 알수 있으며, 장애 포인트에 찾아가서 장애 재처리도 가능하다. 

또한 대용량 데이터 스트리밍 처리의 능력을 가지고 있다. 

 

이벤트 브로커에는 Kafka, kinesis(aws) 가 있다. 

 

 

 

 

반응형