amqp: 4개의 글
RabbitMQ AMQP 프로토콜을 구현해 놓은 프로그램 신뢰성, 안정성과 성능을 충족할 수 있도록 다양한 기능 제공 유연한 라우팅: Message Queue가 도착하기 전에 라우팅 되며 플러그인을 통해 더 복잡한 라우팅도 가능 클러스터링: 로컬 네트워크에 있는 여려 RabbitMQ 서버를 논리적으로 클러스터링 할 수 있고 논리적인 브로커도 가능 함. 오픈 소스로 상업적 지원이 가능 Kafka 대용량 실시간 로그 처리에 특화되어 설계된 메시징 시스템 기좀 범용 메시징 시스템 대비 TPS(Transaction Per Second)가 매우 우수함 특화된 시스템이기 때문에 범용 메시징 시스템에서 제공하는 다양한 기능들은 제공 되지 않음 AMQP 프로토콜이나 JMS API를 사용하지 않고 단순한 메시지 헤더를 ..
Rabbit MQ란? RabbitMQ는 얼랭(Erlang)으로 AMQP를 구현한 메시지 브로커 시스템이다. 얼랭(Erlang) 얼랭(Erlang)은 범용 병령 프로그래밍 언어이다. 원래는 에릭슨(Ericsson)사에서 스위칭 소프트웨어에서 사용하기 위해 개발 되었지만, 1998년 오픈 소스로 공개 되었다. AMQP(Advanced Message Queuing Protocol) https://kaizen8501.tistory.com/217 참고 Ubuntu에 설치 저장소 추가 $ sudo apt list --installed rabbitmq-server Rabbit MQ 설치 $ sudo apt-get install erlang $ sudo apt-get install rabbitmq-server $ ra..
AMQP(Advanced Message Queuing Protocol) AMQP는 메시지 지향 미들웨어를 위한 개방형 표준 응용 계층 프로토콜이다. AMQP 이전 상용화된 MQ(Message Queueing)은 플랫폼 종속적인 제품들이 많아, 서로 다른 이기 존 간에 메시지를 교환하기 위해서는 메시지 포맷 변경을 위한 메시지 브릿지 이용 및 시스템 자체를 통일 시켜야 하는 불편함 존재 메시지 브릿지를 이용함으로써 속도 저하 발생 이를 해결하기 위해 AMQP 등장하였으며, 서로 다른 시스템간에 최대한 효율적인 방법으로 메시지를 교환하기 위한 MQ 프로토콜로 설계 시스템과 벤더에 종속 되는 것을 방지 하기 위해 AMQP는 아래와 같은 조건을 충족 해야 함 모든 Broker들은 똑같은 방식으로 동작 할 것 모..
오늘 포스팅할 내용은 래빗엠큐이다. 그 동안에는 카프카를 사용할 일이 많아 카프카에 대한 포스팅이 주였는데, 이번에 래빗엠큐를 사용할 일이 생겨 간단히 래빗엠큐에 대해 간단히 다루어 볼것이다.(예제 코드는 위 깃헙에 올려놓았습니다.) 비동기 작업에 있어 큐를 사용하려면 중간에 메시지 브로커라는 개념이 존재하는데, 이러한 메시지 브로커에는 RabbitMQ, Kafka 등이 대표적으로 있다. 해당 포스트에서는 표준 MQ프로토콜인 AMQP를 구현한 RabbitMQ(래빗엠큐)에 대해 다루어볼 것이다. 간단하게 메시지큐는 아래 그림과 같은 워크 플로우로 이루어져있다. 대부분의 메시지큐는 프로듀서가 있고, 해당 프로듀서가 브로커로 메시지를 발행하면, 적절한 컨슈머가 해당 메시지를 구독(읽다)하는 구조이다. 그렇다면..