본문 바로가기
Tech/Spring

2. Spring RabbitMQ

by Augustine™ 2020. 2. 11.
반응형

Spring AMQP

 

Spring AMQP

Spring AMQP에 대해 알아보자. Spring AMQP Spring AMQP는 AMQP 기반 메세지 솔루션의 Spring 구현체다. Spring AMQP는 메시지 송수신을 위한 템플릿을 제공한다. AMQP란? AMQP는 Advanced Message Queuing Protoc..

augustines.tistory.com

 

AMQP에 이어서, RabbitMQ를 알아보자. AMQP에 대한 개념이 있어야 하니, 이전 포스팅인 Spring AMQP를 먼저 읽어볼 것.

이 포스팅에서는 RabbitMQ Server의 설치방법과 RabbitMQ Server에서 Queue와 Exchange의 설정 방법에 대해 알아볼 것이다.

 

Spring AMQP Modules

Spring Framework에는 RabbitMQ개발을 위해 두 모듈을 지원한다.

  • spring-amqp

  • spring-rabbit

아래 그림은 Spring Messaging Api의 구성도다.

 

Spring RabbitMQ Server 설치

1. RabbitMQ, Erlang 다운로드

 1)  RabbitMQ를 사용하려면 Erlang 이라는 것도 다운로드해야 한다. Erlang은 일종의 병렬 프로그래밍 언어로서, 1986년에 릴리즈 되었다. 자세한 설명은 아래 주소 참조.

https://ko.wikipedia.org/wiki/%EC%96%BC%EB%9E%AD

 

얼랭 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 얼랭(Erlang)패러다임다중 패러다임 함수형,병행성설계자조 암스트롱 (Joe Armstrong)로버트 버딩 (Robert Virding)마이크 윌리암스 (Mike Williams)발표일1986년최근 버전18.2.1최근 버전 출시일2015년 12월 18일 (4년 전)(2015-12-18)라이선스아파치 라이선스 2.0웹사이트www.erlang.org영향을 받은 언어프롤로그, 스몰토크, PLEX영향을 준 언어F#, 클로저,

ko.wikipedia.org

https://www.erlang.org/download.html 로 방문해서 Erlang 설치 파일을 다운로드하자. 이왕이면 Binary 설치 파일을 받자. 

 

 2)  https://www.rabbitmq.com/install-windows.html 로 방문해서 Rabbit MQ 설치 파일을 다운로드하자. 

 

2. Erlang 과 Rabbit MQ 설치

먼저 Erlang을 먼저 설치하자. otp_win64_22.2.exe 를 더블클릭해서 Default로 설치한다. 

RabbitMQ Server을 설치한다. rabbitmq-server-3.8.2.exe를 더블클릭해서 마찬가지로 Default로 설치를 진행한다.

Rabbit MQ Server의 홈 Directory를 시스템 변수로 등록하자.

prompt 창을 열고, 다음 명령어 실행

rabbitmq-plugins.bat enable rabbitmq_management

윈도우 서비스 콘솔을 열면 RabbitMQ 서비스가 서비스에 등록된 것을 확인할 수 있다.(Win key + r 을 누르면 실행창이 나오는데, services.msc라고 치면 아래처럼 서비스 콘솔을 확인할 수 있다.)

RabbitMQ를 재실행하자. 주소창에 http://localhost:15672 입력. Default 로그인 정보는 guest/guest 다.

 

Spring AMQP RabbitMQ Server Setup

RabbitMQ Server로 AMQP Messaging 어플리케이션을 개발하려면 다음과 같은 절차를 거쳐야 한다. 일단 1), 2)는 위에서 이미 진행했으니 3) 단계부터 시작하자.

1) Erlang 과 RabbitMQ Server 설치

2) Rabbit MQ Admin 웹 콘솔 접속. 

3) Queues 탭에서 Queue 를 생성. 일단 Queue 이름 아무거나 넣고 생성하자. 

Name만 입력하고 "Add queue" 버튼 클릭

4) Exchange를 생성하고 3)에서 생성한 Queue와 매핑 시키자.

Exchanges 탭에서 Name만 입력하고 "Add exchange" 클릭

이제 우리가 만든 큐와 익스체인지를 맵핑 시켜야 한다.

익스체인지 탭에서 우리가 만든 익스체인지를 클릭한다. 

다음과 같은 화면이 나오는데,  "To Queue" 에 우리가 만든 큐 이름을 넣고 Bind 버튼을 선택한다.

 

이제 RabbitMQ 로 뭔가 메시지 송수신 어플리케이션을 만들기 위한 1차적인 준비는 끝났다. 다음 포스팅에서는 RabbitMQ를 이용한 예제에 대한 이야기다.

 

반응형

'Tech > Spring' 카테고리의 다른 글

Spring swagger 적용  (0) 2021.03.09
3. RabbitMQ Example  (0) 2020.02.12
1. Spring AMQP  (0) 2020.02.11
Spring Boot & H2 DB 를 이용한 CRUD 구현 - 1  (1) 2019.09.08
Spring Boot + Spring Security + OAuth2 을 이용한 Google SSO인증  (4) 2018.10.29

댓글