domenica 4 gennaio 2015

CGI, il primo strumento di IoT

Inizio la serie dei post di questo viaggio nell'universo dell'Internet delle Cose, con una breve nota su di una funzionalità che è spesso richiesta in molte applicazioni distribuite, cioè quella di interagire con un programma in esecuzione su di un host qualunque (server, pc, scheda embedded) attraverso il web.
Questa funzionalità è utilizzata da tantissime applicazioni abilitate al web e probabilmente è stata un'esigenza immediata da quando la diffusione di web-server Open Source (come Apache) ha permesso a tanti sperimentatori e hackers di pubblicare contenuti sul web a costo zero (cioè senza dipendere dalla spigolosa e costosa soluzione Microsoft, IIS).
Il primo meccanismo che ha permesso questa interazione via web è stato il CGI - Common Getway Interface.


Credo davvero la CGI conteneva, già dalla sua introduzione (più di 20 anni fa) il seme dell'Internet delle Cose. E sicuramente non è un caso che l'interazione uomo-macchina via web sia una delle prime funzionalità introdotte storicamente nei web server.

Lo spunto a creare questo post mi è venuto da una chiacchierata con un mio amico che, lavorando ad una applicazione distrinuita, controllata da Raspberry, si chiedeva quale potesse essere il modo più semplice per interagire con il programma C++ in esecuzione sulla nota scheda Linux embedded.

Per tutti coloro che abbiano la stessa esigenza, ho preparato un breve tutorial che potete trovare tra le pagine di questo blog.
Questo tutorial è veramente a scopo introduttivo e non esaurisce affatto nè la trattazione dei CGI ne la configurazione di Lighttpd. Tuttavia, nello spirito di imparare solo quanto basta per fare, penso che le indicazioni date su CGI possano avviare abbastanza facilmente questo tipo di sperimentazione.

Ci sono, a onor del vero, architetture più efficienti ed efficaci per questo tipo di applicazioni (web application, middlewares, application servers...)
Tuttavia il mio intento era quello di mostrare come è facile avere subito un assaggio di Internet delle Cose e sperimentare in poche ore l'interfacciamento tra programmi e web.

Nessun commento:

Posta un commento