Skip to content

Este projeto visa a demonstração de uma API com Spring Boot aonde a ideia é simular o processamento de pedidos feito em uma plataforma de e-commerce utilizando filas do RabbitMQ e persistindo esses dados no MongoDB. Implementação Spring Actuator, Prometheus e Grafana para monitorar e observar .

Notifications You must be signed in to change notification settings

CleitonCorrea/api-whit-springboot-and-rabbitmq-mongoDB-Slf4j

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Computador iuriCode

Este projeto consome dados de uma fila criada no RabbitMQ e depois salva esses dados no MongoDB. Atravéz de requisições a API do projeto é possivel verificar os dados do pedido de um cliente, o total dos produtos comprados e a lista desses produtos. Para monitorar a sáude da nossa aplicação e observar alguns comportamentos dessa aplicação implementamos o Spring Actuator, Prometheus e o sistemas de dashboar do Grafana. É simples a execução do projeto. Todos os serviços do RabbitMQ, MongoDB, Phometheus e Grafana rodam dentro de um container Docker.

🦄 Linguagens:

💼 Ferramentas:

💌Canais para entrar em contato: ⤵️

🤝 Colaboradores

Agradecemos às seguintes pessoas que contribuíram para este projeto:

Logo Spring Boot
Spring Boot
Logo RabbitMQ
RabbitMQ

MongoDB

Prometheus

Passo a Passo para executar a Aplicação

1°) - Dependencias

!° - Você precisa ter o Docker instalado em sua maquina
2° - Você precisa ter JVM do JAVA 21 instalado em sua maquina

2°) - Executar os serviços do RabbitMQ, MongoDB, Prometheus e Grafana

Acesse via terminal a pasta local do projeto aonde se encontra o arquivo docker-compose.yml e execute

docker-compose up

Logo apos os serviços podem ser acessados via Browser

Acessar o RabbitMQ interface de gerenciamento

Localhost:15672

Acessar o Prometheus

Localhost:9090


Acessar o Grafana sistema de dashboards

Localhost:3000

Inicializando a Aplicação

Acesse a pasta do projeto via terminal e execute o seguinte comando:

mvn spring-boot:run

Exemplo de mensagem que deve ser consumida

Este é o payload que voce deve inserir na fila cleitoncorrea-created-queue na aba Exchanges

   {
       "codigoPedido": 1001,
       "codigoCliente":1,
       "itens": [
           {
               "produto": "lápis",
               "quantidade": 100,
               "preco": 1.10
           },
           {
               "produto": "caderno",
               "quantidade": 10,
               "preco": 1.00
           }
       ]
   }

About

Este projeto visa a demonstração de uma API com Spring Boot aonde a ideia é simular o processamento de pedidos feito em uma plataforma de e-commerce utilizando filas do RabbitMQ e persistindo esses dados no MongoDB. Implementação Spring Actuator, Prometheus e Grafana para monitorar e observar .

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages