I need a MQTT broker which has HTML5 websocket support and customizable (db-related) authentication and authorization support.

I've found Moquette and Apache ActiveMQ.

Moquette has only one continuous developer and has no stable release yet. Is it stable enough?

ActiveMQ is not focused on MQTT so maybe take much time to understand the project.

What can you advice?

Is there any MQTT brokers for free which meet my requirements? I will use it in a production environment which will have ten thousands concurrent connections.

Any help would be greatly appreciated.

  • Do you have any outcomes, experiments and/or results about MQTT brokers in java? – small_ticket Nov 30 '16 at 10:33
  • I've found only moquette.. Unfortunately it didn't meet my performance requirement. After a few hundreds messages per second my connections was start to disconnect from broker. I've moved to mosquitto which is much better.. – Ismail Yavuz Nov 30 '16 at 13:43
  • Have you tried apollo and/or vertx-mqtt-broker? – small_ticket Nov 30 '16 at 13:56
  • No, apollo looked like more complicated than a simple light-weight broker. I haven't heard vertx-mqtt-broker before. Have you tried any? I will need a Java-version of stable MQTT broker. – Ismail Yavuz Nov 30 '16 at 14:06
  • I've also tried moquette and I have performance problems too. Apollo performed better. I will probably shift to a non-java broker, most probably emqtt. – small_ticket Dec 10 '16 at 16:24

please have a look at Cassandana.Cassandana is an open source MQTT message broker which is entirely written in Java. This project began its life as a fork of Moquette , and later underwent some cleanup, optimization and adding extra features. I have fixed some performance issues of Moquette. Some interesting features of Cassandana are:

  • MQTT compliant broker.
  • Supports QoS 0, QoS 1 and QoS 2
  • TLS (SSL) Encryption
  • PostgreSQL, MySQL and MongoDB Authentication and Authorization
  • Supports Cassandra for Authentication, Authorization and Message Archiving
  • Supports HTTP REST API for Authentication and Authorization
  • Supports Redis for Authentication
  • Supports In-memory caching mechanism to reduce I/O operations
  • MQTT message archiver
  • Easy configurable (YAML based)
  • Supports WebSocket

p.s. I am developer of Cassandana.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.