Apache ActiveMQ vs Eclipse Mosquitto
Apache ActiveMQ
activemq.apache.orgEclipse Mosquitto
mosquitto.orgSide by side
| Figure | Apache ActiveMQ | Eclipse Mosquitto |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | Yes | — |
| Web | Yes | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Message Broker Software | 9.0 (#3) | 7.9 (#19) |
| Spec score · Message Queue (MQ) Software | 9.0 (#3) | 7.8 (#18) |
| Messaging model | It supports queues, topics, JMS addressing, persistent and transient messages, transactions, and XA messaging. | MQTT uses a publish/subscribe model suited to IoT messaging, including low-power sensors, phones, embedded computers, and microcontrollers. |
| Security | The security documentation describes pluggable providers, JAAS authentication, and XML-configured authorization. | The project directs people who find a vulnerability to report it through the Eclipse Security page and lists past security issues and fixes. |
Plans
In their own words
Apache ActiveMQ
Apache ActiveMQ is an open-source messaging and Integration Patterns server for applications that exchange messages. It is self-hosted and supports OpenWire, STOMP, AMQP 1.0, MQTT 3.1, and REST. Listed client languages include Java, C, C++, C#, Ruby, Perl, Python, and PHP. Messaging features include message groups, virtual and composite destinations, wildcards, and enterprise integration patterns. ActiveMQ fully supports JMS 1.1 and J2EE 1.4+ messaging, including transient, persistent, transactional, and XA modes; support for Jakarta Messaging 3.1 and JMS 2.0 is partial. Transport options include in-VM, TCP, SSL, NIO, UDP, multicast, JGroups, and JXTA, with JDBC persistence and a high-performance journal. Browser access is available through a REST API and Ajax web streaming. Security options include pluggable providers, JAAS authentication, XML-configured authorization, and user, group, and destination permissions. ActiveMQ Classic costs nothing under the Apache License 2.0.
Eclipse Mosquitto
Eclipse Mosquitto is a free, open-source message broker for MQTT 5.0, 3.1.1 and 3.1. It uses publish/subscribe messaging, a pattern suited to connected devices such as sensors, phones, embedded computers and microcontrollers. The project describes it as lightweight, with applications from low-power single-board computers to full servers. Mosquitto runs on Linux, macOS, Windows and self-hosted environments. The project also provides a C library for MQTT clients and the mosquitto_pub and mosquitto_sub command-line tools. MQTT and MQTT over WebSockets are supported, and delivery guarantees are configurable. A public test server offers plain MQTT, TLS, client-certificate TLS and WebSocket options. The project lists manufacturing, healthcare, automotive and smart-home systems among broker application areas. Community support is best effort through GitHub, a mailing list, Matrix and Cedalo forums. Cedalo offers hosted or on-premises instances, consulting and custom development.