cuducos / minha-receita

🏢 Sua API web para consulta de informações do CNPJ da Receita Federal
https://minhareceita.org
MIT License
1.32k stars 132 forks source link

DevOps: implementar automação das rotinas gerenciais #261

Open CauanCabral opened 6 days ago

CauanCabral commented 6 days ago

Olá!

Em cima da thread no bluesky, vou transcrever aqui o que entendi e nos comentários ir adicionando algumas possibilidades que vejo pra gente definir o melhor caminho dessas implementações. Fique a vontade para editar, comentar, fechar a issue se achar necessário ;)

Cenário

Hoje a API web da Minha Receita é executada em:

A VM do banco de dados precisa ser acessada todo mês para criar o banco de dados atualizados (~150GB), depoisé necessário apontar a aplicação para o novo e depois de tudo certo apagar o antigo (ficando nesse meio tempo com 2 banco de dados ativos, ~300GB).

A aplicação atende em torno de 30req/s (100MM req/mo) em sua API REST.

Desejado

Possíveis caminhos

cuducos commented 5 days ago

Muito obrigada, @CauanCabral — eu editei só para separar um pouco o que ee banco de dados, o que é o servidor web, e aproveitei para adicionar o espelho de dados.

Agora comentando sobre os possíveis caminhos: dado que o projeto é em Go, uma solução usando algo como Pulumi seria viável? Digo isso pois, pessoalmente, acho Bash e GitHub Actions muito difícil de manter, e não queria só escolher Ansible por eliminação hehehe…