This is the source code for some of the essential microservices frequently used in different microservice architectures. This project consists of a number of loosely coupled microservices, all written in Go:
-
broker-service: an optional single entry point to connect to all services from one place (accepts JSON; sends JSON, makes calls via gRPC, and pushes to RabbitMQ)
-
authentication-service: authenticates users against a Postgres database (accepts JSON)
-
logger-service: logs important events to a MongoDB database (accepts RPC, gRPC, and JSON)
-
queue-listener-service: consumes messages from amqp (RabbitMQ) and initiates actions based on payload (sends via RPC)
-
mail-service: sends email (accepts JSON)
-
Language: Golang 1.18 or higher
Warning Note: this project is under heavy development! Things may change rapidly!