Este projeto foi criado para o desafio Rinha de Backend - 2024/Q1.
Para desenvolvimento do código da aplicação foi utilizada a linguagem de programação Go. Go ou Golang, é uma linguagem fortemente tipada e compilada, o que permite a criação de programas com excelente desempenho e baixo consumo de memória.
Para armazenamento dos dados foi utilizado o Postgres, um SGBD (Sistema Gerenciador de Banco de Dados) relacional muito popular.
Para balanceamento de carga das requisições foi utilizado o Nginx.
Para realizar o controle de concorrência foi utilizado o banco de dados em memória Redis, com auxílio do algorítmo Redlock, implementado pela biblioteca redsync.
Para executar o projeto, acesse o diretório raiz deste projeto e execute:
docker compose up -d