MQTT vs. XMPP Which Should I Choose? [closed]

It depends on what you are trying to do and what hardware you are running.

MQTT has very low keep-alive traffic. XMPP is a an IM protocol, and has a much, much higher overhead in handling presence messages between all the clients.

If you have a small memory footprint constraint, then having to handle the XML parser may make the use of XMPP impossible.

Keep in mind that MQTT stands for Message Queue Telemetry Transport, i.e., it is a transport protocol and does not define the message format at all – you will have to supply this; XMPP is an Instant Messaging protocol which carefully defines all the message formats and requires that all messages be in XML.

In addition to all this: MQTT is a publish subscribe protocol, XMPP is an instant messaging protocol that can be extended (using XEP-0060) to support publish subscribe. You need to consider this when you architect your system.

We are finding MQTT to be the quiet achiever. Your milage might be different.

It all depends …

Track down the recent announcement by LinkedIn where they discuss their use of MQTT in their mobile app.

Cheers
Mark

(BTW Andy was slightly off in his reference to us. We are at Centre for Educational Innovation & Technology (CEIT), The University of Queensland, Brisbane, Australia)

Leave a Comment