martedì 13 settembre 2016

Internet of Things & M.E.A.N Stack

Approfittando degli esperimenti sui protocolli di comunicazione legati al mondo dell’IoT, iniziati con la nota Internet Of Things - Protocolli di Comunicazione, cogliamo l’occasione per valutare il grado di integrabilità, tra le tecnologie che ruotano intorno a questo mondo, ed un insieme di strumenti che ha attirato la mia attenzione durante quest anno, che vanno sotto la denominazione di M.E.A.N Stack, che si propongono come la miglior alternativa ai classici stack per lo sviluppo di applicazioni web (.NET, LAMP, ...).


mongoDB

express

AngularJS

Node.js
M. E. A. N.

Tra le varie risorse utilizzate per apprendere le basi delle tecnologie coinvolte, una menzione speciale va alla piattaforma di e-learning gratuita Microsoft Virtual Academy
ed in particolare ai seguenti tutorial:
Un’altra preziosa fonte di informazioni è stata il video tutorial ed il blog di Travis Tidwell che introduce degli strumenti formidabili per la realizzazione rapida sia delle funzionalità lato server (le API REST che consentiranno, nel nostro caso, si salvare su db i dati provenienti dal campo), che lato client, rendendo possibile la realizzazione di un front-end che sfrutti appieno le tecnologie dello stack in esame.



Il primo risultato di tale integrazione, per i cui dettagli si rimanda al repository creato in occasione della precedente nota, è stato quello di realizzare un’infrastruttura in grado di persistere le letture dal campo del nostro termostato intelligente, su un database mongoDB.
In particolare è stato implementato un server REST che consente le operazioni C.R.U.D. sul db, ed è stato modificato il comportamento dell’oggetto remote in modo da esguire una scrittura sul database per ogni dato ricevuto dall’oggetto thermostat. L’esito di un run della simulazione è quello di avere i dati serializzati nel nostro database NoSQL pronti per eventuali analisi successive.

Eseguendo una query sulla collection thermostats dal prompt dei comandi, l’esito è:

mongo cli

oppure utilizzando il client visuale Robomongo,

Robomongo

Have fun.





Nessun commento:

Posta un commento