RabbitMQ: An Introduction to the Open-Source Message Broker

Eden Ko·2023년 5월 10일
0

RabbitMQ

목록 보기
1/3

What is RabbitMQ?

  • 메시지 지향 미들웨어 애플리케이션에 널리 사용되는 오픈 소스 메시지 브로커 소프트웨어
  • 서로 다른 소프트웨어 시스템, 특히 여러 컴퓨터나 네트워크에 분산되어 있는 시스템 간의 통신을 용이하게 하도록 설계
  • 사용하는 프로그래밍 언어나 플랫폼에 관계없이 서로 다른 애플리케이션 간에 메시지를 전송할 수 있는 안정적이고 확장 가능한 방법을 제공
  • 효율성과 유연성을 모두 갖추도록 설계된 바이너리 프로토콜인 고급 메시지 큐 프로토콜(AMQP) 기반

features of RabbitMQ

  • 메시징 프로토콜: RabbitMQ는 고급 메시지 큐 프로토콜(AMQP), 스트리밍 텍스트 지향 메시징 프로토콜(STOMP), 메시지 큐 텔레메트리 전송(MQTT) 등 여러 메시징 프로토콜을 지원합니다.

  • 라우팅: RabbitMQ는 직접, 토픽 기반, 팬아웃 교환을 포함한 여러 라우팅 옵션을 제공합니다. 이를 통해 메시지 라우팅을 세밀하게 제어할 수 있으며 개발자가 복잡한 메시징 패턴을 만들 수 있습니다.

  • 메시지 큐: RabbitMQ는 메시지 큐 시스템을 사용하여 안정적인 메시지 전달을 보장합니다. 메시지는 소비자에게 전달될 때까지 대기열에 저장됩니다. 이를 통해 생산자와 소비자를 분리하고 메시지 버퍼링을 통해 높은 메시지 전송률을 처리할 수 있습니다.

  • 확장성: RabbitMQ는 확장성이 뛰어나며 여러 서버에 분산하여 대량의 메시지를 처리할 수 있습니다. 또한 클러스터링과 페더레이션을 지원하여 여러 RabbitMQ 인스턴스를 함께 연결할 수 있습니다.

  • 내구성: RabbitMQ는 메시지를 전달하기 전에 디스크에 저장하여 메시지 내구성을 제공합니다. 이를 통해 브로커나 소비자가 장애가 발생해도 메시지가 손실되지 않도록 보장합니다.

  • 메시지 승인: RabbitMQ는 메시지 확인을 지원하여 소비자가 메시지를 수신하고 처리했는지 확인할 수 있도록 합니다. 이를 통해 메시지가 손실되거나 중복되지 않도록 보장합니다.

  • 확장성: RabbitMQ는 확장성이 뛰어나며 메시지 브로커에 새로운 기능을 추가하는 데 사용할 수 있는 다양한 플러그인 및 확장 기능을 제공합니다.

  • 관리 인터페이스: RabbitMQ는 관리자가 메시지 브로커를 모니터링하고 관리할 수 있는 웹 기반 관리 인터페이스를 제공합니다. 여기에는 대기열 및 교환 관리, 메시지 추적, 사용자 관리 등의 기능이 포함됩니다.

profile
Junior Developer

0개의 댓글