Skip to content

Desenvolvimento microserviços em Golang com comunicação via RabbitMQ

License

Notifications You must be signed in to change notification settings

ssmaciel/go-rabbit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Go RabbitMQ

Microserviços com RabbitMQ

Features   |    Pré-Requisitos   |    Tecnologias   |    Lincença

🚧 Finalizado 🚧

📎 Features

  • Criação de Microserviços
  • Comunicação entre microserviços
  • Utilização de Filas com RabbitMQ
  • Criação de Containers e Images com Docker
  • Gerenciamento de Containers com Kurbenetes

💻 Projeto

Desenvolvido duas aplicações com Microsserviços utilizando Golang, Containers com Docker e Kurbenetes

✅ Demonstração do Frontend Producer

✅ Demonstração do Backend Consumer

⚙ Pré-requisitos

Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas: Git, Docker, Golang (caso queira debugar o fonte é claro rs). Além disto é bom ter um editor para trabalhar com o código como VSCode

📙 Rodando os Microsserviços (Ambiente completo)

# Clone este repositório
$ git clone https://github.com/ssmaciel/go-rabbit.git

# Rode o docker-compose para subir o ambiente
$ docker-compose up -d

📗 Rodando os Microsserviços (Ambientes separados)

# Clone este repositório
$ git clone https://github.com/ssmaciel/go-rabbit.git

# Navegue para a pasta do rabbit
$ cd rabbit

# Rode o docker-compose para subir rabbit
$ docker-compose up -d

# Navegue para a pasta do consumer
$ cd ../consumer

# Rode o microserviço consumer
$ go run consumer.go

# Navegue para a pasta do producer
$ cd ../producer

# Rode o microserviço consumer
$ go run producer.go

🚀 Tecnologias

Esse projeto foi desenvolvido com as seguintes tecnologias:

  • Golang
  • RabbitMQ

📕 Bibliotecas

Esse projeto foi utilizou das seguintes lib:

  • godotenv
  • go-retryablehttp
  • go-rabbitmq

📙 Arquitetura do Projeto

Para uma melhorar estrutura de projetos utilizei dos seguintes fundamentos:

  • DDD
  • CI & CD

📘 Padrão de Código

Para padronizar a escrita do código, utilizei as seguinte ferramentas:

  • EditorConfig

📝 Licença

Esse projeto está sob a licença MIT.


Feito por Samuel Maciel

About

Desenvolvimento microserviços em Golang com comunicação via RabbitMQ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published