Link

Formulário com ESP8266 Server + Python serial + MQTT.

Nesse Post vamos utilizar a placa ESP8266 para criar um servidor web e enviar um formulário web para o servidor ESP8266 e consumir em uma fila MQTT utilizando Python.

Vamos demonstrar um pequeno teste capturando informações coletados do formulário web e consumindo em uma fila MQTT no servidor Cloudmqtt utilizando Python.

Acesse o tutorial completo em: https://nakalabs.herokuapp.com/articles/2022/nodeMcuFormServerSerialMq.html.

Link

Python deque.

O deque ou Double-ended queue é uma capacidade Python que permite manipular uma pilha por ambos os lados.

Deque suporta inclusão e remoção de ambos os lados de forma segura e eficiente, além de ser thread-safe.

Apesar dessa capacidade de manipulação, o Deque mantém as funcionalidades de uma pilha, lista ou fila normal.

Acessos randômicos não são recomendados quando se utiliza o deque.

Por outro lado, o acesso normal dos elementos é feito de forma eficiente pois armazena em memória reservado para o deque.

Acesse o tutorial completo em: https://nakatech.herokuapp.com/article/2021/pyDeque.html.

Link

Python + Nameko.

O Nameko é um framework de microsserviços Python baseado em fila RPC e http.

A ideia é apresentar um breve tutorial desse framework baseado em microsserviços em fila RPC.

Esse modelo de microsserviço baseado em fila RPC é interessante quando a comunicação é feita por eventos gerados por outras aplicações.

Se a ideia é utilizar microsserviços que seja acionado por pessoas, o ideal é utilizar o formato http que não será abordado nesse Post.

O Nameko é baseado em fila MQ, então é importante que seja instalado previamente o RabbitMQ.

Acesse o tutorial completo em: https://nakatech.herokuapp.com/article/2021/nameko.html.

Link

Spring + JMS embarcado.

Nesse Post vamos demonstrar um pequeno exemplo utilizando Spring com fila JMS embarcado.

Com 3 classes podemos implementar um modelo de fila JMS e ActiveMQ embarcado de forma simples.

Utilizar a tecnologia JMS pode resolver vários problemas de acoplamento e ser agnóstico a diferentes tecnologias.

Esse modelo de fila embarcada pode ajudar em algumas soluções onde se precisa tratamento de chamadas assíncronas.

Outra vantagem deste modelo é que não existe a necessidade de configurar uma infraestrutura para tratamento de filas.

Acesse o tutorial completo em: https://nakatech.herokuapp.com/article/springQueue.html.

Citação

Java Queue.

A interface Queue é utilizada como uma fila baseada em memória.

As vantagens de utilizar a interface Queue é por ser rápido, eficiente, leve, thread safe e eficaz.

Por ser de simples implementação, pode ser muito eficaz para pequenas aplicações.

Sem a necessidade de utilização de outra aplicação, a interface Queue pode ser embarcado facilmente nas aplicações.

Ótimo para soluções onde é necessário implementações de FIFO(First In, First out).

Acesse o tutorial completo em: https://nakatech.herokuapp.com/article/queue.html.

Citação

Python+mqtt.

O mqtt é um acrônimo de Message Queuing Telemetry Transport, um protocolo de mensagem leve muito utilizado em serviços de mensagens para dispositivos móveis ou iot.

Para conectar no broker mqtt utilizando Python, utilizamos a biblioteca paho-mqtt.

O paho-mqtt é uma biblioteca que facilita a integração entre Python e o protocolo mqtt.

Soluções utilizando filas como mqtt pode ser uma forma de desafogar o sistema, podendo ser acionado conforme vão chegando às mensagens.

Utilizando Python e mqtt pode se resolver vários problemas relacionados com sincronização e fluxo de dados.

Acesse o tutorial completo em: https://nakatech.herokuapp.com/article/pythonMqtt.html.

Mosquitto.

O Mosquitto é um message broker de código aberto que implementa o protocolo Mqtt.

O protocolo Mqtt tem a abordagem de ser leve e enviar mensagens de forma rápida e segura utilizando o padrão publish/subscribe.

Por ser leve e rápido, o Mosquitto é muito utilizado em soluções com IOT (Internet das coisas).

A utilização do Mosquitto é bem simples o que ajuda muito em desenvolvimento e testes de envio de mensagens em fila.

O Mosquitto é multi plataforma, então podemos utilizar em qualquer sistema operacional. Os exemplos que vamos mostrar serão na plataforma Linux Ubuntu.

Instalação do Mosquitto.

A instalação que vamos mostrar é feita no Ubuntu 18.10, repare como é simples tanto a instalação como a utilização.

Para instalar, digite no seu terminal como sudo:
$ sudo apt-get install mosquitto mosquitto-clients

Para testar os eventos de envio e recebimento de mensagens, vamos abrir 2 terminais:

Para criar um subscriber, ou a fila que vamos receber a mensagem, digite no terminal:
$ mosquitto_sub -t topic/test

Para enviar uma mensagem(Publisher), abra outro terminal e digite:
$ mosquitto_pub -t topic/test -m "Mosquitto test!"

Repare no terminal onde executamos o Subsriber o recebimento da mensagem enviado pelo Publisher:

Conclusão.

O Mosquitto é uma ótima opção para soluções rápidas de troca de mensagens utilizando o protocolo Mqtt. Por ser leve e rápido o Mosquitto é uma ótima opção para utilização em projetos com IOT.