Consumir menssagens da Amazon MQ com Apache Camel em aplicação Spring Boot

Matheus Silva
3 min readFeb 13, 2021

--

1. Overview

Neste artigo, nós veremos como consumir mensages de uma fila da Amazon Mq com uma aplicação Spring Boot.

OBS: Não irei explicar como realizar a configuração de um serviço Amazon MQ neste artigo veremos apenas como configurar e consumir mensagens em uma aplicação spring boot.

Pode conferir como configurar um serviço ActiveMQ na AWS here: Getting started with Amazon MQ.

2. Queue

Uma fila, permite que apenas um consumidor receba — consuma — cada mensaem publicada na fila da mensageria.

3. Spring Boot App

Podemos utilizar o site spring initializr para gerar nossa aplicação;

Precisaremos das seguintes dependências:

  • spring-boot-starter-activemq;
  • activemq-camel;
  • spring-boot-starter-web

E também:

  • Maven;
  • Java 8;
  • Spring Boot 2.4.2

3.1. Properties

Em nosso arquivo de propriedades da nossas aplicação — podendo ele ser: application.properties ou application.yml — , precisaremos das seguites propriedades:

spring.activemq.broker.url: quando criamos um serviço Amazon Mq a AWS nos fornece alguns tipos de conexões. Neste artigo utilizaremos a conexão SSL;
spring.activemq.user: usuário para conectar na Amazon MQ;
spring.activemq.password: senha para a aplicação se conectar à Amazon MQ;
spring.activemq.queue.name: nome da fila que queremos criar um listener e consumir as mensagens;
spring.activemq.in-memory: configurar como false, pois o Spring executa um ActiveMQ em memória por padrão.

As outras configurações não nos importa aqui.

3.2. Bean Configuration

Para nos conectar ao serviço Amazon Mq precisamos criar um bean com o código abaixo:

3.3. Apache Camel Consumer

Para consumir a mensagem publicada iremos utilizar a bibliotea Apache Camel com o código abaixo:

Código simple e de fácil compreensão.

Pronto…nossa aplicação está preparada para consumir mensagens publicadas em uma fila de um serviço Amazon MQ.

4. Conclusion

Simples, não acha?!

Precisamos prestar atenção quanto as configurações de acesso da AWS, para garantir que o serviço possui uma porta aberta para que sua aplicação se conecte corretamente.

Irei escrever um artigo, sobre as configurações de um serviço Amazon Mq. Que irá complementar este artigo.

Espero que tenha gostado e que seja util.

Github do projeto deste artigo: https://github.com/msilvadev/awsmq-consuming

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Matheus Silva
Matheus Silva

No responses yet

Write a response