Negli ultimi anni lo sviluppo tecnologico ha aperto nuove strade e nuovi orizzonti da esplorare.
Tra i tanti aspetti interessanti che si stanno consolidando, sicuramente l’IoT (Internet of Things) e i microservizi sono pronti a giocare un ruolo importante nei prossimi anni.
Anche se ancora oggi sono considerati come aree diverse nell’IT, prima o poi, questi due mondi saranno considerati due facce della stessa medaglia.
Entrambi, infatti, si occupano di sistemi distribuiti dove le principali differenze sono rappresentate dai protocolli di comunicazione utilizzati: i microservizi di solito si occupano del protocollo HTTP, mentre l’IoT è basato su altri protocolli come MQTT e CoAP.
In particolare, il protocollo MQTT è stato pensato e progettato appositamente per la comunicazione “machine to machine”. Le sue caratteristiche principali sono la semplicità e la leggerezza, caratteristiche ideali in contesti in cui è presente una piccola impronta di codice e una disponibilità di banda limitata.
Proprio grazie alle sue caratteristiche, MQTT sembra essere diventato uno standard de facto per la comunicazione tra dispositivi e quindi più in generale per tutto l’ecosistema IoT.
Il protocollo MQTT si basa su un classico meccanismo di pubblicazione e sottoscrizione (publish and subscribe). In questo pattern ci sono tre diversi soggetti che entrano in gioco nella comunicazione:
– Il publisher è un dispositivo (ad esempio un sensore) che desidera pubblicare dei messaggi;
– Il subscriber è un dispositivo (ad esempio un PC, uno smartphone) che desidera ricevere dei messaggi;
– Il broker è un software che si inserisce nel mezzo della comunicazione e che si occupa di gestire correttamente tutto lo scambio dei messaggi tra publisher e subscriber.