본문 바로가기
IT/Knowledge

message Queue (MQ) 란?

by 성준하이 2023. 3. 23.
반응형

이번 포스팅에서는 메세지 큐에 대해서 알아볼 예정이다.

 

먼저 큐에 대한 개념은 아래 참고 포스팅을 통해서 확인 바란다.

 

메세지 큐는 말 그대로 큐 안에 메세지를 넣는 것이다.

 

사전적인 의미는 다음과 같다.

메시지 큐(MessageQueue: MQ)는 프로세스 또는 프로그램 인스턴스가 데이터를 서로 교환할때 사용하는 통신 방법입니다. 더 큰 개념으로는 메시지 지향 미들웨어(Meesage Oriented Middleware: MOM)를 구현한 시스템을 의미합니다. 여기서 MOM은 비동기 메시지를 사용하는 응용 프로그램 간의 데이터 송수신을 말합니다.

 

그럼으로써 얻을수 있는 장점은 아래와 같다.

  • 비동기(Asynchronous): 큐(Queue)에 넣기 때문에 나중에 처리 가능
  • 비동조(Decoupling): 애플리케이션(Application)과 분리 가능
  • 탄력성(Resilience): 일부가 실패 시 전체에 영향을 받지 않음
  • 과잉(Redundancy): 실패할 경우 재실행이 가능
  • 보증(Guarantees): 작업이 처리된걸 확인 가능
  • 확장성(Scalable): 다수의 프로세스들이 큐에 메세지를 보낼 수 있음
  • Load Balancing 기능 적용 가능

큐가 사용되는 곳은 매우 다양한데 대표적으로는 이럴 경우에 사용이 된다.

​1. 다른 곳의 API로 부터 데이터 송수신

2. 다양한 애플리케이션에서 비동기 통신 시

3. 이메일 발송 및 문서 업로드 시

4. 많은 양의 프로세스들을 처리할 시

 

대표적인 mq 의 서비스가 있다.

rabbitMQ 나 kafka 등이 있고,

kafka 관련해서는 아래 참고 포스팅에 내용을 확인하면 도움 될것이다.

 


참고 포스팅

https://thenicesj.tistory.com/314

 

스택(Stack), 큐(Queue), 힙(Heap) 에 대해서

자료구조 알고리즘을 하다보면 스택, 힙, 큐에 대해서 많이 얘기를 들어봤을텐데 오늘 포스팅에서는 하나씩 설명을 해보려고 한다. 스택 선형 자료구조 Last In First out(LIFO) 구조 스택 특징 같은

thenicesj.tistory.com

https://thenicesj.tistory.com/259

 

Apache Kafka 란?

Apache Kafka 에 대해서 알아보려고 한다. 카프카(Kafka)는 2011년 미국 링크드인(Linkedin)에서 개발했다. 카프카 이전에는 다음 그림과 같이 모든 것들이 서로 연관되어서 결합력이 높았다. 하지만 결합

thenicesj.tistory.com

 

반응형

'IT > Knowledge' 카테고리의 다른 글

Y2K(23.03.26)  (6) 2023.03.25
JWT ?  (7) 2023.03.24
[NATS] NATS 개념 정리  (22) 2023.03.22
배치와 데몬의 차이  (36) 2023.03.08
cassandra란?  (25) 2023.03.04

댓글