All Projects → qingmang-team → Chanamq

qingmang-team / Chanamq

Licence: other
Open source AMQP messaging broker based on Akka

Programming Languages

scala
5932 projects

Labels

Projects that are alternatives of or similar to Chanamq

Akka Rabbitmq
RabbitMq client in Scala and Akka actors
Stars: ✭ 228 (+117.14%)
Mutual labels:  akka, amqp
Akka Reasonable Downing
Quorum split brain resolver for static akka cluster
Stars: ✭ 101 (-3.81%)
Mutual labels:  akka
Humusamqp
PHP 7 AMQP library
Stars: ✭ 70 (-33.33%)
Mutual labels:  amqp
Scala Ddd Example
🎯 λ Hexagonal Architecture + DDD + CQRS applied in Scala using Akka HTTP
Stars: ✭ 86 (-18.1%)
Mutual labels:  akka
Eventstore.akka.persistence
Event Store Journal for Akka Persistence
Stars: ✭ 72 (-31.43%)
Mutual labels:  akka
Alpakka Kafka
Alpakka Kafka connector - Alpakka is a Reactive Enterprise Integration library for Java and Scala, based on Reactive Streams and Akka.
Stars: ✭ 1,295 (+1133.33%)
Mutual labels:  akka
Hydra
A real-time data replication platform that "unbundles" the receiving, transforming, and transport of data streams.
Stars: ✭ 68 (-35.24%)
Mutual labels:  akka
Akka Http Quickstart Scala.g8
Stars: ✭ 103 (-1.9%)
Mutual labels:  akka
Squbs
Akka Streams & Akka HTTP for Large-Scale Production Deployments
Stars: ✭ 1,365 (+1200%)
Mutual labels:  akka
Clickhouse Scala Client
Clickhouse Scala Client with Reactive Streams support
Stars: ✭ 84 (-20%)
Mutual labels:  akka
Travesty
Diagram- and graph-generating library for Akka Streams
Stars: ✭ 83 (-20.95%)
Mutual labels:  akka
Rabbitroutine
Lightweight library that handles RabbitMQ auto-reconnect and publishing retry routine for you.
Stars: ✭ 77 (-26.67%)
Mutual labels:  amqp
Amiquip
Pure Rust RabbitMQ client
Stars: ✭ 88 (-16.19%)
Mutual labels:  amqp
Laravel Queue Rabbitmq
RabbitMQ driver for Laravel Queue. Supports Laravel Horizon.
Stars: ✭ 1,175 (+1019.05%)
Mutual labels:  amqp
Rexlin600.github.io
系列博客、涵盖领域广、不定时更新、欢迎加入
Stars: ✭ 102 (-2.86%)
Mutual labels:  amqp
Akka Http
The Streaming-first HTTP server/module of Akka
Stars: ✭ 1,163 (+1007.62%)
Mutual labels:  akka
Bunny
Bunny is a popular, easy to use, mature Ruby client for RabbitMQ
Stars: ✭ 1,224 (+1065.71%)
Mutual labels:  amqp
Rabbus
A tiny wrapper over amqp exchanges and queues 🚌 ✨
Stars: ✭ 86 (-18.1%)
Mutual labels:  amqp
Better Files
Simple, safe and intuitive Scala I/O
Stars: ✭ 1,424 (+1256.19%)
Mutual labels:  akka
Akka Batteries
Utilities for Akka cluster in production
Stars: ✭ 103 (-1.9%)
Mutual labels:  akka

ChanaMQ Server

ChanaMQ is an Akka based, AMQP messaging broker. It currently supports:

  • AMQP 0-9-1

Status

  • 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
    • Channel.Flow
    • Exchange.Bind / Exchange.Unbind
    • Basic.Reject / Basic.Nack / Basic.Recover / Basic.RecoverAsync(use Basic.Recover)
    • Tx.Select / Tx.Commit / Tx.Rollback
    • Confirm.Select / Confirm.SelectOk

Building From Source and Packaging

  • sbt clean chana-mq-server/dist

Installation

  • 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 localhost

Create virtual host:

curl localhost:15672/admin/vhost/put/vhostname

Delete virtual host:

curl localhost:15672/admin/vhost/delete/vhostname

High Available

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.

License

ChanaMQ server is licensed under the Apache License version 2.0.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].