Skip to content

Arquitetura

cjjcastro edited this page Dec 13, 2017 · 10 revisions

Arquitetura do Projeto

Introdução

O documento visa apresentar as principais características arquiteturais da aplicação QueroCultura, com intuito de esclarecer como será modelada a arquitetura do sistema.

Diagrama

Nginx

O Nginx é um servidor web rápido, leve, e com inúmeras possibilidades de configuração, ele é utilizado no projeto para redirecionamento das portas utilizadas pelo metabase e pelo django fazendo com que ambos utilizem a mesma porta.

Metabase & Postgres

O Metabase a parte responsável por processar as informações que são salvas no MongoDB e gerar gráficos com esses dados. Para a utilização do metabase é utilizado o banco postgres para salvas as informações respectivas à ele. Após serem criados os gráficos é gerado um embedding, que é uma forma de utilizar o gráfico em outras aplicações, para a utilização no django na camada template.

Celery & Redis

Celery é uma ferramenta utilizada para agendar tarefas, é responsável por chamar as funções que fazem as requisições e populam o banco. Ele utiliza o banco redis para salvar suas informações.

Django & Mongo

O padrão arquitetural da aplicação será o MVT(Model - View - Template) tendo em vista que ela será implementada através do framework Django que é escrito e faz uso da linguagem de programação Python, contando também com um "API connection" responsável pela comunicação com a API Mapas Culturais que fornecerá dados para alimentação da aplicação QueroCultura. O banco de dados usado será o MongoDB que é NoSql e orientado a documentos, que será utilizado para salvar os dados necessários para os indicadores.

Clone this wiki locally