Message Queue(3)
-
Rabbit MQ
Rabbit MQ란Rabbit MQ란 AMQP를 구현한 메시지 브로커입니다. AMQP라는 표준 MQ 프로토콜로 만들어져 있고 Cluster 구성이 쉽고 Manage UI가 제공되며 무엇보다 성능이 뛰어나다고 알려져 있습니다. 또한 다양한 plugin도 제공되어 확장성이 뛰어나며 Spring에서도 AMQP 연동 라이브러리가 제공되어 편리하게 연동하여 사용이 가능합니다.특징ISO 표준 AMQP 구현비동기 처리를 위한 메시지 큐 브로커Erlang과 java언어로 만들어짐분산 처리를 고려한 메시지 큐고가용성 보장Pub/Sub 모델 형식다양한 plugin 지원주요 옹어Producer: 메시지를 보내는 ApplicationPublish: Producer가 메시지를 보냄Queue: 메시지를 저장하는 버퍼Consume..
2020.05.13 -
Kafka
Apache Kafka란Apache Kafka란 대용량의 실시간 로그 처리에 특화되어 설계된 메시징 시스템입니다. Kafka는 Pub/Sub 모델을 기반으로 동작하며 크게 producer, consumer, broker로 구성됩니다. 그림으로 표현하면 아래와 같이 나타납니다.Kafka 용어Producer데이터를 발생시키고 Kafka Cluster에 적재하는 역할을 하는 어플리케이션Kafka Cluster카프카 서버로 이루어진 클러스터Broker: 카프카 서버Zookeeper: 분산 코디네이션 시스템으로, Kafka Broker를 하나의 Cluser로 코디네이팅하는 역할을 하며, Cluster의 Leader를 발탁하는 방식을 제공Topic: Kafka Cluster에 데이터를 관리할 때 그 기준이 되는 개..
2020.05.08 -
Message Queue
Message QueueMessage Queue란 비동기 메시지를 사용하는 다른 응용프로그램 사이의 데이터 송수신을 구현한 시스템을 의미합니다. 사용자가 많아져서 웹 요청이 증가하면 요청에 대한 응답을 기다리다가 대기 시간이 지연되어 서비스를 정상적으로 제공하지 못하게 됩니다. 이런 상황을 해결하기 위해 기존에 분산되어 있던 데이터 처리를 한 곳에 집중하면서 Message Broker를 두어서 필요한 프로그램에 작업을 분산시키는 것이 Message Queue의 목적입니다. 이러한 Message Queue는 별도의 공정 작업을 연기할 수 있는 유연성을 제공하여 Service Oriented Architecture의 개발에 도움을 줄 수 있습니다.Message Queue의 장점비동기: Queue에 넣기 때문..
2020.05.08