Este repositório contém o código que visa criar uma simulação de comunicação de dados entre um sensor, um broker MQTT, o RabbitMQ e a AWS. A ideia central é reproduzir um ambiente controlado que imita a troca de informações em um sistema distribuído. O projeto foi conduzido sobre a orientação do Engenheiro de Software Rafael Costa (Hedro - S.I.), sendo caracterizado como o produto central do treinamento de estágio Hedro 2024, envolvendo tecnologias como: Node.js, TypeScript, Rust, DockerFile, AWS e VSCode.
No terminal, execute as seguintes instruções:
git clone https://github.com/Guiliard/Hedro-Training.git
cd Hedro-Training
cd device_simulator/
docker build . -t device_simulator
cd ..
cd rmq-bridge/
docker build . -t rmq-bridge
cd ..
Construir o contêiner do consumidor de mensagens do broker RabbitMQ e ponte para a AWS (rmq-consumer):
cd rmq-bridge/
docker build . -t rmq-consumer
cd ..
sudo docker-compose up -d
sudo docker-compose ps
sudo docker-compose down
| Componentes | Detalhes |
|---|---|
Processador |
Intel(R) Core(TM) i7-1065G7 CPU @ 1.30GHz 1.50 GHz |
RAM Instalada |
12.0 GB (Utilizável: 11.8 GB) |
Tipo de Sistema |
Sistema Operacional de 64 bits, processador baseado em x64 |
Sistema Operacional |
Linux Pop!_OS 22.04 LTS |
[1] ECLIPSE - Repositório GitHub, @eclipse: paho.mqtt.rust - Disponível em: https://github.com/eclipse/paho.mqtt.rust. Acessado em 22 de Janeiro de 2024.
[2] RABBITMQ - Repositório GitHub, @rabbitmq: rabbitmq-tutorials - Disponível em: https://github.com/rabbitmq/rabbitmq-tutorials. Acessado em 27 de Janeiro de 2024.
[3] AWS - AWS Documentation. Disponível em: https://docs.aws.amazon.com/. Acessado em: 3 de Fevereiro de 2024.
[4] Docker - Get Docker. Disponível em: https://docs.docker.com/get-docker/. Acessado em: 17 de Janeiro de 2024.