Skip to content

GabrielDragone/ms-email

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CRIANDO UM MICROSERVICE DE ENVIO DE EMAIL:

  • Microservice de envio de e-mail de forma autônoma e independente, que tem apenas essa responsabilidade.
  • Anotações do video da Michelli Brito sobre como criar um ms de envio de e-mail:

Obs:

  • Como não utilizei Java e acabei fazendo com Kotlin, optei por não utilizar o lombok pq não achei necessário.
  • Além disso, o BeansUtils utilizado no video pra converter DTO para Model também não funcionou, dessa forma optei por utilizar uma interface Mapper.

Dependências:

  • Spring Web.
  • Spring Data JPA.
  • PostgreSQL Driver.
  • Validation.
  • Java Mail Sender.
  • Spring Doc.
  • Flyway (porém não foram criadas migrations, acabou que não foi usado).
  • Spring AMQP (RabbitMQ).

Configurações:

  • Optei por subir uma instância de banco postgres através de Docker. Essa configuração pode ser acessada no arquivo docker-compose.yml.
  • Demais configurações estão no application.properties (Tem HCC, mas não tem problema, pq criei um e-mail especificamente pra estudos).

Como rodar:


MENSAGERIA COM RABBITMQ NO MICROSERVICE DE EMAIL:

  • Continuação do video de desenvolvimento do MS de email, dessa vez implementando mensageria com RabbitMQ (broker):
  • Dessa forma, poderemos realizar a comunicação de formas:
    • Síncrona, utilizando requisição HTTP.
    • Assíncrona, utilizando mensageria.
  • Adicionada nova dependencia do Spring AMQP para utilizarmos o broker.
  • Criada instância do RabbitMQ no site do mesmo: https://api.cloudamqp.com/
  • As configurações foram realizadas nas classes dos pacotes configs e consumers junto com application.properties.
  • No EmailDto precisamos anotar com ConstructorProperties pra que ele consiga realizar a conversão do que é enviado na fila para o que é recebido no ouvinte.

About

Microservice de envio de email

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages