Clustering MQTT for high availability and scalability.

VerneMQ is open source software, extendable, and enterprise support is available.

VerneMQ - The Big Picture

VerneMQ is perfect for...

Mobile Messaging

Develop mobile messaging services with a much smaller overhead than XMPP. Open up new mobile use cases with low-latency bi-directional communication.

Connecting IoT Field Devices

Monitor and control all devices you have out there in the field. Connect them to your data centers, backend services and smartphone apps. You can trust VerneMQ to hold it all together.

Smart Infrastructure

Cities, Homes, Transportation. Mobile assets. From a small lab project to a successful industrial deployment of your solution: VerneMQ will handle your messages.

Frequently Asked Questions

How does VerneMQ handle over a million connections?
VerneMQ is based on Erlang OTP, the best technology currently available to build highly scalable messaging systems. This enables VerneMQ to scale horizontally and vertically by fully utilizing multicore architectures.

Do I need to know Erlang to run a VerneMQ cluster?
No! We know Erlang can look cryptic to someone accustomed to other programming languages. For this reason we provide CLI tools, integration APIs and plugins so Erlang is hidden away and you don't need to know anything about it.

Are customizations required to run VerneMQ?
No! VerneMQ comes with built-in plugins for simple file-based authentication and authorization. However, if your use case requires e.g. a database lookup for verifying client credentials a custom plugin might be needed. VerneMQ was built to be simple and easy to extend.

Do I need to know Erlang to implement a custom plugin?
Not necessarily. Most use cases can use the built-in Lua scripting engine that also comes with database drivers for Postgres, MySQL, MongoDB, Redis, and Memcached. Another approach would be to use a webhook and build your plugin in the programming language of your choice.

How does VerneMQ compare to RabbitMQ and EMQ?
All three brokers are implemented using Erlang and therefore benefit from the similar Erlang runtime characteristics. However, VerneMQ was build from the ground up to tolerate network failures and provides fine-grained control over the availability and consistency behaviour. Moreover, the underlying distributed data storage features automatic conflict resolution and recovers automatically from netsplits.

How does VerneMQ compare to HiveMQ and MessageSight?
Both are high-performance, closed source brokers running on the Java VM. Both brokers are clusterable but lack proper documentation of their failure modes during the presence of network failures.

How to support VerneMQ?
As with every software (open source as well as proprietary) you usually require assistance during evaluation, customization, and operations. Those are the areas where we offer our commercial services.

Got more questions?

Please get in touch with us!