MQTT is a very lightweight, data-centric protocol based on the publish / subscribe model. Due to its minimal packet overhead, MQTT transcends data transfer. Unlike HTTP is a document-centric protocol based on the request / response pattern for client-server computing and is not always optimized for mobile devices. Besides, compared to HTTP, the MQTT protocol ensures high delivery guarantees and runs through TCP. Finally, HTTP is scalable, but MQTT is more appropriate for IoT development.