Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Wiki Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 16
    • Issues 16
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Colabora aí
  • WikiWiki
  • Wiki
  • Arquitetura

Arquitetura · Changes

Page history
Update Arquitetura authored Oct 20, 2024 by Filipe Serafini's avatar Filipe Serafini
Hide whitespace changes
Inline Side-by-side
Arquitetura.md
View page @ 9eae6ec2
......@@ -27,4 +27,24 @@ A camada de View será o aplicativo móvel desenvolvido em Flutter, responsável
A camada de Controller será responsável por receber as requisições do aplicativo (View), processá-las, interagir com a camada Model para manipular os dados e devolver as respostas necessárias. O Controller será implementado utilizando Spring Boot para criar os endpoints da API REST. Ele funcionará como intermediário entre a interface do usuário (View) e o banco de dados (Model), garantindo que a lógica de negócio seja aplicada corretamente.
## Arquitetura da Infraestrutura - AWS
TBD
![ColaboraAiAWS](uploads/a5203110a98daeb9e1ab49c6b9a6b67b/ColaboraAiAWS.JPG)
## Frontend Mobile
O frontend mobile, desenvolvido com Flutter, permite a criação de uma aplicação cross-platform, atendendo tanto iOS quanto Android. Para a hospedagem e entrega dos arquivos estáticos deste aplicativo, utilizamos o serviço Amazon S3 (Simple Storage Service). O S3 provê alta durabilidade e disponibilidade, ideal para armazenar conteúdos acessíveis publicamente ou privadamente, dependendo da configuração de acesso.
## Frontend Web
Para o frontend web, escolhemos React devido à sua eficiência em renderizar componentes dinâmicos que melhoram a experiência do usuário. Assim como o frontend mobile, os arquivos estáticos do frontend web são hospedados no Amazon S3, garantindo rápida distribuição e baixa latência. Para otimizar ainda mais a entrega de conteúdo estático globalmente, pode-se integrar o Amazon CloudFront como CDN, reduzindo a carga sobre o servidor principal e melhorando o tempo de carregamento para usuários ao redor do mundo.
## Backend
O backend é implementado usando Java com o framework Spring Boot, conhecido por sua agilidade e poder em criar aplicações complexas e de alto desempenho. Utilizamos contêineres Docker para encapsular o ambiente do backend, facilitando a escalabilidade e a manutenção. Esses contêineres são gerenciados através do Amazon EC2 (Elastic Compute Cloud), que oferece capacidade computacional redimensionável na nuvem, permitindo ajustar recursos conforme a demanda.
## Integração e Gerenciamento de Imagens Docker
Utilizamos o Amazon ECR (Elastic Container Registry) para armazenar as imagens Docker do backend. O ECR é um repositório de imagens Docker que integra-se facilmente com o EC2, automatizando o deploy e garantindo que sempre a versão mais recente esteja disponível para produção sem interrupções no serviço.
## Arquitetura de Comunicação
- Amazon EC2: Responsável por executar o backend da aplicação, lidando com a lógica de negócios e processamento de dados.
- Amazon S3: Além de hospedar os assets dos frontends, armazena dados gerados pelos usuários, como uploads de arquivos, garantindo segurança e acesso controlado.
- Amazon ECR: Mantém as imagens Docker, simplificando o processo de atualização e manutenção do ambiente de execução do backend.
Clone repository
  • Arquitetura
  • Backend
  • Banco de Dados
  • Configuracao
  • Escopo
  • Frontend
  • Gerencia
  • Mockups
  • Processo
  • Qualidade
  • Home