- Home
- Message Broker Software
- Apache Artemis
Apache Artemis
What it is
Apache Artemis is a free, self-hosted message broker for applications that exchange messages. It supports AMQP 1.0, MQTT 3.1, 3.1.1 and 5, STOMP 1.0, 1.1 and 1.2, OpenWire, and its Core protocol. Client support includes Jakarta Messaging 3.1, JMS 2.0 and 1.1, JNDI, and implementations for Java, JavaScript, C, C++, Python, .Net, and other languages. Flexible clustering distributes load, while high availability can use shared storage or network replication. Persistence options include Linux AIO, memory-mapped storage, Java NIO, and JDBC. Asynchronous mirroring supports disaster recovery. Security is enabled by default with role permissions, authentication managers, and SSL transport encryption. Docker image creation scripts support deployment. The broker runs on Linux, macOS, and Windows, with configurable delivery guarantees, per-queue ordering, and dead-letter queues. Downloads provide SHA-512 checksums and ASC signatures for verification. Community mailing lists and a bug and feature request system provide project support.
For and against
For
- Free under Apache License 2.0
- Supports AMQP, MQTT, STOMP, OpenWire, and Core
- Clustering and high-availability options are available
- Security is enabled by default
- Offers multiple persistence choices
Against
- Self-hosted deployment requires operational management
- Java 17 or later is required
- Support is directed to community channels
- Download signatures require user verification
The verdict
Apache Artemis provides broad protocol and client coverage with clustering, persistence, security, and disaster-recovery options. It is a practical fit when your team wants a free broker it can operate itself.
Who it suits
It suits developers and teams building self-hosted messaging systems across multiple protocols and programming languages.
Plans and prices
Apache Artemis
Java 17+ · self-hosted broker
Read 2 Oct 2026 · artemis.apache.org
On the record
- Availability
- High availability can use shared storage or network replication.artemis.apache.org · read 2 Oct 2026
- Client APIs
- It supports Jakarta Messaging 3.1, JMS 2.0 and 1.1, and includes client implementations and JNDI support.artemis.apache.org · read 2 Oct 2026
- Client languages
- The project says clients are available in Java, JavaScript, C, C++, Python, .Net, and other languages.artemis.apache.org · read 2 Oct 2026
- Clustering
- The broker provides flexible clustering for distributing load.artemis.apache.org · read 2 Oct 2026
- Deployment
- The project provides scripts to help create Docker images for deployment.artemis.apache.org · read 2 Oct 2026
- Disaster recovery
- Asynchronous mirroring is available for disaster recovery.artemis.apache.org · read 2 Oct 2026
- Download verification
- The download page provides SHA-512 checksums and ASC signatures and says users should verify downloaded files.artemis.apache.org · read 2 Oct 2026
- Persistence
- Journal options include Linux AIO, memory-mapped, Java NIO, and JDBC persistence.artemis.apache.org · read 2 Oct 2026
- Product
- Apache Artemis is a multi-protocol message broker for messaging applications.artemis.apache.org · read 2 Oct 2026
- Protocols
- The broker supports AMQP 1.0, MQTT 3.1/3.1.1/5, STOMP 1.0/1.1/1.2, OpenWire, and its own Core protocol.artemis.apache.org · read 2 Oct 2026
- Security
- Security is enabled by default and supports role-based permissions, authentication managers, and SSL transport encryption.artemis.apache.org · read 2 Oct 2026
- Support
- The project directs users to community mailing lists for questions and to its bug and feature request system.artemis.apache.org · read 2 Oct 2026