Replies: 2 comments 2 replies
-
@jvanz Sobre o restante da arquitetura não vou opiniar pq não estou envolvido nessas discussões e não estou conseguindo tempo para me inteirar :-) |
Beta Was this translation helpful? Give feedback.
-
Criei uma projeto para agruparmos as tarefas relacionadas a essa reestruturação: https://github.com/orgs/okfn-brasil/projects/2 |
Beta Was this translation helpful? Give feedback.
-
Nas últimas semanas tenho conversado com algumas pessoas sobre a intenção de reestruturar a plataforma de processamento e disponibilização dos diários cobertos pelo Querido Diário. Estou abrindo essa discussão para demais membros da comunidade terem a oportunidade para trazer ideias e encontrar falhas.
Metas
Uma plataforma que fornece os meios necessários para rodar os apps no processamento dos diários oficiais do Querido Diário. Para isso vamos começar com o objetivo final e depois traçar o caminho para chegar até ele (a.k.a. backcasting).
O objetivo é ter uma plataforma que seja fácil de manutenção, alteração e ampliação. Englobando:
A seguinte imagen é um exemplo do que poderiamos tentar criar. Lembre-se, é apenas um exemplo para começar a conversa. Não tem detalhes.
Propostas iniciais de alterações
Raspadores
API
Processamento de dados
Plataforma de busca
Infraestrutura
O resumo aqui é: minizar o máximo possível o tempo gasto para resolver coisas simples que máquinas podem fazer por conta própria. Por exemplo, fazer ssh em um máquina para subir algo que caiu. Devemos utilizar o tempo dos nossos contribuidores em coisas que gerem valor para o projeto.
Toda a infra deve ser gerenciada por scripts. Permitindo assim uma fácil reprodução do ambiente, automação e facilidade de alteração.
Utilizar Terraform para subir toda a infra para rodar nossos apps. Outras sugestões de ferramentas? Se a ferramenta de escolha for mesmo Terraform, precisamos definir onde iremos guardar o estado da infraestrutura. Dessa maneira, permitimos que múltiplas pessoas trabalhem nisso juntas. Possíveis soluções são o Digital Ocean Spaces ou uma base PostgreSQL. É necessário analisar quais as vantagens e desvantagens de cada opção.
Utilizar o máximo de serviços da Digital Ocean para facilitar a manutenção da plataforma do QD. Esses serviços também devem ser criados utilizando Terraform ou script que sejam automatizados. Sugestões de serviços a serem utilizados:
Utilizar scripts/terraform para gerenciar serviços que possamos disponibilizar para nossos apps. Por exemplo, Kafka, RabbitMQ, Apache Spark, Elasticsearch, ou qualquer outro app que não seja desenvolvido por nosso time diretamente.
Beta Was this translation helpful? Give feedback.
All reactions