A blog by Devendra Tewari
A comparison with additional brokers is available at https://github.com/mqtt/mqtt.github.io/wiki/server-support.
Feature | ActiveMQ | ActiveMQ Artemis | HiveMQ | JoramMQ | Mosquitto | RabbitMQ | VerneMQ |
---|---|---|---|---|---|---|---|
Open source | Apache 2.0 | Apache 2.0 | Commercial | LGPL, Commercial | EPL/EDL | MPL 1.1 | Apache 2.0 |
Commercial support | YES | YES | HiveMQ | ScalAgent | TIBCO | Pivotal | Octavo Labs AG |
Docker container | rmohr/activemq | vromero/activemq-artemis | hivemq/hivemq3 | NO | eclipse-mosquitto | rabbitmq:3 | erlio/docker-vernemq |
Windows support | YES | YES | YES | YES | YES | YES | NO |
MQTT version | 3.1 | 3.x | 3.x, 5.0 | 3.x | 3.1.1, 5.0 | 3.1.1 | 3.x, 5.0 |
AMQP version | 1.0 | 1.0 | NA | 0.9.1, 1.0 | NA | 0.8, 0.9.x, 1.0 | NA |
AMQP interoperability | NO | NO | NA | NO | NA | Partial (see note 1) | NA |
MQTT over WebSocket | YES | YES | YES | YES | YES | YES | YES |
Retain flag | YES | YES | YES | YES | YES | Partial (see note 2) | YES |
Last will and testament | YES | YES | YES | YES | YES | YES | YES |
Persistent Session | YES | YES | YES | YES | YES | YES | YES |
QoS Level 1 | YES | YES | YES | YES | YES | YES | YES |
QoS Level 2 | YES | YES | YES | YES | YES | NO | YES |
Shared subscriptions | NO | NO | YES | NO | NO | NO | YES |
Bridging | NO | NO | YES | YES | YES | NO | YES |
Listener topic isolation | YES | YES | |||||
Clustering | YES | YES | YES | YES | NO | YES | YES |
REST Management API | YES | YES | YES | YES | NO | YES | YES |
Management CLI | YES | YES | YES | YES | NO | YES | YES |
Latest version | 5.15 (see note 3) | 2.7.0 (see note 3) | 4 | 5.16 | 1.6.2 | 3.7.13 | 1.7.1 |
GitHub likes | 1.4K | 0.5K | NA | NA | 2.4K | 5.4K | 1.7K |