WebServer Arduino con MQTT o semplici chiamate HTTP ?

Salve a tutti.

vi pongo un quesito, ho implementato su Arduino un piccolo serverino Web il quale attraverso una shield WiFi ESP8266 (classica), è raggiungibile in rete (locale) da vari client. Esso accetta chiamate GET HTTP del tipo

http:\192.168.1.80?Pin=8&State=ON.

Arduino parserizza i parametri e cambia lo stato del PIN 8 in ON quindi

pinMode(8,HIGHT)

Ora per il momento tralasciando questioni di sicurezza nel mandare le richieste in un semplice HTTP GET, leggo su alcuni post che altri utenti utilizzano Arduino e MQTT per fare questo tipo di richieste.

Secondo me il fine ultimo è lo stesso, Arduino disponibile ad un certo indirizzo IP, recupera delle istruzioni e le esegue.

La cosa che è differente è il MEZZO con cui si comunica con Arduino.

Mi potreste dare qualche delucidazione in merito a questi due approcci differenti per comunicare con esso ?

thanks

lo stavo quardando anche io per implementarolo al posto delle rischeste http in nodered, a quanto ho capito è un protocollo deditato alla domotica, ha meno comandi e soprattutto in ambito mobile funziona molto meglio, credo per accendere e spegnere un relè cambia poco ma se devi ricevere dati in tempo reale da un sensore magari su più utilizzatori fa la differena, cmq lascio a chi è più esperto chiarirti meglio.
Curiosità ma perchè no metti programmi direttaemnte arduino su un nodemcu? se non hai na necessità di sensori particolari eviti doppi collegamenti

Io l'ho usato solo per inviare lo stato ma so che è possibile anche ricevere comandi.
Perché usarlo?
Uno dei vantaggi è che è molto più leggero, poiché invii solo pochi byte di dati.
Ti permette anche di far colloquiare apparati differenti.

Il protocollo MQTT lo trovo fantastico per le mie esigenze (automazioni ed invio dati) ci sono librerie che ne rendono l'utilizzo abbastanza semplice.
Una cosa importante però: il protocollo MQTT ha bisogno di un broker per la gestione dei topic.
Come detto, se si devono solo gestire ON/OFF su varie schede allora forse è sprecato, se invece vuoi inviare anche dati (misure di sensori ecc.) allora MQTT è (per quel che mi riguarda) una ottima soluzione: veloce, leggero e robusto.
Come detto serve un serverino (raspberry va benisismo) dove far girare broker come mosquitto. Non so se si può implementare il broker direttamente su arduino o esp8266...

Ciao grazie a tutti per le risposte.

Ad ogni modo per rispondere a @misterita, dico che per il momento non mi serve comandare i sensori ma non è detto che in un futuro non mi serva. Il mio obiettivo è anche quello un domani (avendo un piccolo giardino con un mini impianto di irrigazione), usare arduiono per innaffiare le piante però questo deve leggere magari il grado di umidità della terra e quindi decidere se far partire l'irrigazione o meno (non so se avrò mai il tempo materiale per fare una cosa del genere >:( >:( >:( >:( ( cmq come SEMPRE THANKS TO ALL