ChanaMQ is an Akka based, AMQP messaging broker. It currently supports:
- AMQP 0-9-1
- ChanaMQ is still in the alpha phase.
- Methods/Features are not supported yet:
- Authentication / Access Control
Virtual host Native ssl/tls
- Connection.SecureOk / Connection.Blocked / Connection.Unblocked
- Exchange.Bind / Exchange.Unbind
Basic.Reject/ Basic.Nack/ Basic.Recover/ Basic.RecoverAsync(use Basic.Recover)
- Tx.Select / Tx.Commit / Tx.Rollback
Building From Source and Packaging
- sbt clean chana-mq-server/dist
- unzip chana-mq-server/target/universal/chana-mq-server-x.x.x.zip;
- cd conf; cp prod.conf application.conf
- edit application.conf for your configuration
- cd bin; ./chana-mq-server &
- To enable persistent feature, you need to install Cassandra and create chanamq space and tables as create-cassantra.cql
Create/Delete Virtual Host
You can change the default admin REST server port via configuration
chana.mq.amqp.admin.port. The admin interface is forced to be
Create virtual host:
Delete virtual host:
HA of ChanaMQ is based on Akka cluster HA. It does not support queue mirror, but the message will survive hardward failure and node down if its delivery mode is set to 2 (persistent), and the queue and exchange are both durable. Each message is located on a single node, but will be reloacted to another node and recovered from persistence when this single node is down.
ChanaMQ server is licensed under the Apache License version 2.0.