AMQP를 구현한 메세지 브로커 시스템

PRODUCER : 메세지를 보내는 사람 (큐에 직접 접근하지 않고 EXCHANGE를 통해 접근)
EXCHANGE : 메세지를 목적지(큐)에 맞게 전달해주는 배달원
QUEUES : 메세지를 쌓는 큐(이름으로 구분, 같은 이름, 다른 설정으로 생성하면 오류 발생)
CONSUMER : 메세지를 받는 사람 (큐에 직접 접근하여 메세지를 가져옴)
PRODUCER가 메세지를 보내면 EXCHANGE에서 해당하는 키에 맞게
**큐에 분배**를 하고 해당 큐에서 CONSUMER가 메세지를 받음
PRODUCER들에게 전달 받은 메세지들을 어떤 큐들에게 발송할지를 결정하는 객체
| 타입 | 설명 | 특징 |
|---|---|---|
| Direct | Routing key가 **정확히 일치**하는 Queue에 메세지 전송 |
Unicast |
| Topic | Routing key **패턴이 일치**하는 Queue에 메세지 전송 |
Multicast |
| Headers | [key:value]로 이루어진 **header 값을 기준 일치**하는 Queue에 메세지 전송 |
Multicast |
| Fanout | 해당 Exchange에 등록된 모든 Queue에 메세지 전송 | Broadcast |