Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

What FireMQ does not support

FireMQ aims to be honest about its gaps. If something you need is missing, open an issue on GitHub.

Not supported

FeatureNotes
Clustering and replicationFireMQ runs on one node. Leader-follower replication is on the roadmap.
Quorum queue semanticsx-queue-type: quorum is accepted and creates a durable classic queue. Delivery limits (x-delivery-limit) and replication are not implemented.
Streamsx-queue-type: stream is rejected. Streams are on the roadmap.
MQTT, STOMP, AMQP 1.0Only AMQP 0-9-1 and the FireMQ protocol. MQTT is on the roadmap.
PluginsNo plugin system. Plugin exchange types (x-delayed-message, x-consistent-hash, x-random) are rejected with COMMAND_INVALID.
Federation and shovelNot supported.
LDAP, OAuth 2, x509 client authenticationOnly username and password (PLAIN, AMQPLAIN).
Topic permissionsOnly configure, write and read permissions per vhost.
immediate publishingCloses the connection with 540, as in RabbitMQ 3.x.
channel.flow with active=falseRejected with 540, as in RabbitMQ.
basic.recover with requeue=falseRejected with 540, as in RabbitMQ.
prefetch_size (byte-based prefetch)Rejected with 540, as in RabbitMQ.
Consumer priorities (x-priority on consumers)Accepted and ignored.
Direct reply-to (amq.rabbitmq.reply-to)Not supported; use a temporary exclusive queue.
Vhost and user limits, operator policies, parametersNot supported.
HTTPS on the management listenerUse a TLS-terminating proxy.
Management API statistics historyRates are current only; there is no sampling history or ?lengths_age.

Supported

Everything else in RabbitMQ's core AMQP 0-9-1 model works, including:

  • exchanges: direct, fanout, topic and headers (x-match all, any, all-with-x and any-with-x), exchange-to-exchange bindings, alternate exchanges, internal and auto-delete exchanges
  • queues: durable, exclusive, auto-delete, server-named, x-message-ttl, per-message expiration, x-expires, x-max-length, x-max-length-bytes, x-overflow (drop-head, reject-publish, reject-publish-dlx), x-dead-letter-exchange, x-dead-letter-routing-key with x-death headers, x-max-priority, x-single-active-consumer
  • consuming: prefetch per consumer and per channel (global), acks, nacks and rejects with requeue, basic.get, basic.recover, consumer cancel notifications
  • publishing: publisher confirms, mandatory returns, transactions (tx.select, tx.commit, tx.rollback)
  • policies, vhosts, users, permissions, definitions import and export, memory and disk alarms with connection.blocked