MATT's

메세징 시스템(Messaging System) 본문

Kafka

메세징 시스템(Messaging System)

matt5659 2020. 7. 20. 23:41

MSA(마이크로서비스 아키텍쳐 (Microservices Architecture))에서는 구조 상 시스템 간의 호출이 많기 때문에 서비스간 결합도를 낮추기 위해 비동기 요청, 성능, 안정성 등을 고려하여 각 모듈 간의 데이터 송수신 방법으로 메세징 시스템을 사용한다.

 

1. 용어

* MOM (Message Oriented Middleware, 메세지 지향 미들웨어)

- 독립된 어플리케이션 간에 데이터를 주고받을 수 잇도록 하는 시스템 디자인

- 함수 호출, 공유 메모리 등의 방식이 아닌 메세지 교환을 이용

  때문에 분산처리가 가능해지며, 서비스간의 결합도가 낮아짐

- Pub/Sub 구조

  . 메세지를 발행하는 Publisher(Producer), 메세지를 소비하는 Subscriber(Consumer)로 구성

* Message Broker

- 메세지 처리 또는 메세지 수신자에게 메세지를 전달하는 시스템

- 일반적으로 MOM을 기반으로 함

* MQ (Message Queue, 메세지 큐)

- Message Broker와 MOM을 구현한 소프트웨어

- RabbitMQ, ActiveMQ, kafka 등

- MOM은 메세지 전송 보장을 해야하기 때문에 AMQP를 구현함

* AMQP (Advanced Message Queueing Protocol)

- 메세지를 안정적으로 주고받기 위한 인터넷 프로토콜

 

요약하자만, RabbitMQ, kafka 등을 `AMQP를 구현한 MOM시스템이다`라고 생각하면 된다.

 

2. 메세징 시스템

- `API로 호출할 때 보내는 데이터들을 처리하는 시스템`

 

* 참고 : https://victorydntmd.tistory.com/343

'Kafka' 카테고리의 다른 글

Kafka - 실습  (0) 2020.08.03
kafka란?  (0) 2020.07.29