A high-performance, distributed MQTT message broker built on Erlang/OTP for scalable and reliable IoT messaging.
VerneMQ is a distributed MQTT message broker built on Erlang/OTP, designed to handle high volumes of concurrent IoT device communications with low latency and high reliability. It solves the problem of scalable, fault-tolerant messaging for IoT platforms by supporting horizontal and vertical scaling on commodity hardware.
IoT platform developers, embedded systems engineers, and organizations building smart products or industrial IoT solutions that require robust, scalable message brokering.
Developers choose VerneMQ for its proven Erlang/OTP foundation, which ensures high concurrency and fault tolerance, along with full MQTT protocol support, extensible plugin architecture, and features tailored for industrial-grade deployments.
A distributed MQTT message broker based on Erlang/OTP. Built for high quality & Industrial use cases. The VerneMQ mission is active & the project maintained. Thank you for your support!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Scales horizontally and vertically on commodity hardware, supporting high concurrency and fault tolerance for massive IoT deployments, as highlighted in the key features.
Implements MQTT 5.0 with all features like enhanced authentication, message expiration, and topic aliases, ensuring compliance with the latest protocol standards.
Supports plugins for authentication with databases like MongoDB, Redis, and PostgreSQL, allowing seamless integration into existing IoT platforms.
Includes $SYS tree, Graphite reporting, HTTP API, and a cluster status web page for real-time monitoring and administration, as detailed in the features.
Requires building from source with specific Erlang/OTP versions (25-27) and dependencies like libsnappy-dev, which can be challenging for non-Erlang developers, as noted in the build instructions.
Focuses solely on MQTT without built-in support for other protocols like AMQP, which may restrict use in mixed-protocol environments.
Based on Erlang/OTP, which has a unique concurrency model and syntax, increasing the barrier to entry for teams not already invested in the ecosystem.