... | ... | @@ -3,7 +3,14 @@ |
|
|
|
|
|
|
|
|
# Página da Arquitetura do Sistema
|
|
|
Esta é a página onde irá ficar todas as informações da Arquitetura do seu projeto, Como:
|
|
|
|
|
|
O projeto Notar e Anotar utiliza uma arquitetura orientada a serviços. Apenas um App se comunica com a API externa da aplicação, que por sua vez salva os dados em um banco de dados.
|
|
|
|
|
|
Como cliente foi feito um app nativo utilizando dart com o framework flutter, o servidor da aplicação foi escrito em Golang e o banco de dados escolhido foi o MongoDB.
|
|
|
|
|
|
O applicativo utiliza a API RESTful por meio de requisições http.
|
|
|
|
|
|
Esta página possui todas as informações da Arquitetura do seu projeto, Como:
|
|
|
|
|
|
* Rotas de Backend (Arquitetura funcional)
|
|
|
* Objects – Backend API
|
... | ... | @@ -24,12 +31,6 @@ Devem ser apresentados das seguintes formas: |
|
|
* Descrições ou Textos explicativos
|
|
|
|
|
|
# Arquitetura
|
|
|
O arquitetura utilizada pelo projeto notar e uma arquitetura orientada a servico. Apenas um app se comunica com a api externa da aplicacao, que por sua vez salva os dados em um banco de dados.
|
|
|
|
|
|
Como cliente foi feito um app nativo utilizando dart com o framework flutter, o nosso servidor de aplicacao foi escrito em Golang e o banco de dados escolhido foi o MongoDB.
|
|
|
|
|
|
O applicativo utiliza a API RESTful por meio de requisicoes http.
|
|
|
|
|
|
|
|
|
# Arquitetura funcional
|
|
|
## Rotas
|
... | ... | @@ -146,13 +147,28 @@ Esta rota e responsavel por realizar as operacoes em relacao as rotinas criadas |
|
|
- DELETE
|
|
|
|
|
|
|
|
|
# Arquitetura nao funcional
|
|
|
# Arquitetura não-funcional
|
|
|
## Diagrama de Componentes
|
|
|
|
|
|
# Arquitetura de software
|
|
|
## Arquitetura do sistema
|
|
|
O back-end da aplicação foi feito utilizsndo golang e mongodb. O ambiente proposto pelo time de arquitetura foi a utilizacao de containers docker em uma instancia EC2 rodando ubuntu 18.04. Para rodar os dois containers foi utilizado docker-compose.
|
|
|
O back-end da aplicação foi feito utilizando golang e mongodb. O ambiente proposto pelo time de arquitetura foi a utilização de containers docker em uma instância EC2 rodando ubuntu 18.04. Para rodar os dois containers foi utilizado docker-compose.
|
|
|
|
|
|
## Diagrama do Sistema
|
|
|
|
|
|
<center><img src="Images/Diagramaarquitetura.jpg"></center>
|
|
|
|
|
|
## Diagrama de Deploy
|
|
|
Para o deploy da aplicaçāo é necessário realizar um acesso remoto ssh na instância EC2 que se encontra na AWS. Depois de realizado o acesso é preciso parar todos os containers do Docker, entrar na pastas /git/notar-e-anotar-back-end, /git/notar-e-anotar-database e realizar um git pull. Depois basta utilizar o comando docker-compose up na pasta notar-e-anotar-back-end que o docker subirá os dois containers da aplicação.
|
|
|
Para o deploy da aplicaçāo é necessário realizar um acesso remoto ssh na instância EC2 que se encontra na AWS. Depois de realizado o acesso, é preciso parar todos os containers do Docker, entrar na pastas /git/notar-e-anotar-back-end, /git/notar-e-anotar-database e realizar um git pull. Depois basta utilizar o comando docker-compose up na pasta notar-e-anotar-back-end que o docker subirá os dois containers da aplicação.
|
|
|
|
|
|
|
|
|
<center><img src="Images/Diagrama de Deploy v1.svg"></center>
|
|
|
|
|
|
|
|
|
O deploy do backend e do banco de dados é feito de forma manual.
|
|
|
|
|
|
Acessamos a instância na AWS onde atualizamos o repositórios tanto do banco de dados quanto do backend.
|
|
|
|
|
|
Utilizando os arquivos Dockerfile presentes em cada repositório, rodamos o docker-compose.yaml que fará o deploy de ambos sistemas baseando-se nas configurações dos Dockerfiles.
|
|
|
|
|
|
Feito o deploy do docker-compose, o backend estará disponível no IP estático configurado para a instância da AWS. |