Skip to content

Latest commit

 

History

History
 
 

KitsuneSemCalda

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Rinha de Backend 2024-Q1

Submissão de KitsuneSemCalda

Linguagem e banco de dados selecionados

  • Golang -> Golang é uma linguagem de programação criada pela Google e lançada como código livre em novembro de 2009. Sendo esta uma linguagem compilada e focada em produtividade e programação concorrente.

  • Postgres -> Postgres é um sistema de gerenciamento de banco de dados SGBD desenvolvido na forma de código aberto

  • Nginx -> Nginx é um servidor leve http, proxy reverso, proxy de email IMAP/POP3 feito por Igor Sysoev em 2005 sob a licença BSD de 2 Claúsulas.


Ferramentas escolhidas para este projeto

  • Gorm -> Gorm é uma biblioteca de ORM (Object-Relational Mapping) desenvolvida em Go para Go.

Ela oferece uma variedade de funcionalidades, incluindo associações (tem um, tem muitos, pertence a, muitos para muitos, polimorfismo, herança de tabela única), hooks (antes/depois de criar/salvar/atualizar/excluir/encontrar), carregamento ansioso com Preload, Joins, transações, transações aninhadas, ponto de salvamento, RollbackTo para ponto de salvamento, modo de instrução preparada, modo DryRun, inserção em lote, FindInBatches, Find/Create com Map, CRUD com SQL Expr e Context Valuer.

É amigável para desenvolvedores e fácil de usar com uma API de plugin flexível e testes.

  • Mux -> Mux é uma biblioteca de roteamento HTTP poderosa para a construção de servidores web Go.

Ela implementa a interface http.Handler, portanto, é compatível com o http.ServeMux padrão.

As solicitações podem ser correspondidas com base no host da URL, caminho, prefixo do caminho, esquemas, valores de cabeçalho e consulta, métodos HTTP ou usando correspondentes personalizados.

Os hosts da URL, caminhos e valores de consulta podem ter variáveis com uma expressão regular opcional.

As URLs registradas podem ser construídas, ou “invertidas”, o que ajuda a manter referências aos recursos.


Como rodar este código:

Em sua linha de comando use:

docker compose up

Contato