Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/robsantossilva/maratona-fullcycle-marco-2020
Maratona Full Cycle Março 2020
https://github.com/robsantossilva/maratona-fullcycle-marco-2020
Last synced: about 2 months ago
JSON representation
Maratona Full Cycle Março 2020
- Host: GitHub
- URL: https://github.com/robsantossilva/maratona-fullcycle-marco-2020
- Owner: robsantossilva
- Created: 2020-07-03T19:16:18.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-01-24T03:17:21.000Z (almost 2 years ago)
- Last Synced: 2023-03-04T10:19:11.091Z (almost 2 years ago)
- Language: TypeScript
- Size: 4.76 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 48
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Maratona Full Cycle Março/2020
Projeto de um sistema de ordens de entregas (Delivery) com monitoramento realtime.
### Detalhamento
A principio parece um simples CRUD mas por trás existem 5 Microsserviços trabalhando juntos, cada um se responsabiliza por um contexto diferente da aplicação e trabalhando em sintonia conseguem solucionar o problema. A Ideía principal é permitir a criação de ordens de entrega, selecionando o motorista e o destino. Um microsserviço escrito em Go Lang irá simular o deslocamento do motorista e esse deslocamento é monitorado em tempo real através de uma interface web desenvolvida com Reac JS.E por fim, após o motorista chegar ao destino o micro serviço é notificado e então altera o status da entrega para "Entregue".
### Tecnologias utilizadas
- RabbitMQ 3.8: Faz a comunicação assincrona entre os microsserviços
- Go Lang 1.14
- NodeJs 12.14
- Framework NestJS
- Framework RactJS
- Mysql 5.7
- Docker### Microsserviços
- Micro-Drivers: Mantem o cadastro de motoristas.- Micro-Orders: Responsável pela criação de ordens de entregas, tudo o que se refere a Ordens de Entrega será responsabilidade deste microsserviço. Irá comunica-se com Micro-Drivers via http request para obter informações do driver. Notificara o Micro-Mapping e Micro-Simulator que uma nova orden foi criada.
- Micro-Mapping: Responspável por manter o RealTime do posicionamento do motorista e identifica se o mesmo chegou ao destino notificando o Micro-Order que o motorista finalizou a entrega.
- Micro-Simulator: Responsavel por simulator o deslocamento do motorista.
### Pré-requisitos
- Docker
- Docker Compose### Instalação
``` bash
sudo docker-compose up -d
```