
VerneMQ
Distributed MQTT message broker built on Erlang/OTP
3.6k stars 429 forks last commit first released Apache-2.0
Actively maintained
Last commit 17 Aug 2026.

VerneMQ is a high-performance, distributed MQTT message broker designed for scalable, highly available messaging in IoT, M2M, mobile, and web applications. Built on Erlang/OTP, it supports clustering, low-latency publish/subscribe, and fault tolerance on commodity hardware.
Key Features
- MQTT 3.1, 3.1.1, and MQTT 5.0 protocol support (including QoS 0/1/2)
- Horizontal and vertical scaling with clustering and high availability
- TLS encryption and WebSocket support for MQTT over the web
- Authentication and authorization via built-in plugins and extensible hooks
- Multiple integration options including database-backed auth and HTTP webhooks
- Offline message storage and session handling features such as shared subscriptions and session balancing
- Administration HTTP API and operational visibility features (logging, tracing, status page, $SYS tree)
Use Cases
- Reliable IoT device connectivity for telemetry ingestion and command/control
- Industrial and smart infrastructure messaging with high availability requirements
- Mobile and web realtime messaging based on MQTT publish/subscribe
Limitations and Considerations
- Advanced customization may require writing plugins or Lua scripts depending on integration needs
- Some features (for example, offline storage) rely on specific backend components such as LevelDB
VerneMQ is a solid choice when you need a production-grade MQTT broker that can handle large connection counts and tolerate network failures. Its clustering model, plugin architecture, and integration options make it suitable for both lab deployments and industrial-scale systems.
Categories:
Tags:
Tech Stack:
Similar to VerneMQ

Eclipse Mosquitto
Lightweight MQTT message broker
Eclipse Mosquitto is a lightweight, open-source MQTT broker supporting MQTT 5.0 and 3.1.1, plus client libraries and CLI tools for pub/sub messaging.


EMQX
Scalable MQTT broker and real-time messaging platform for IoT
EMQX is a high-performance MQTT broker and IoT messaging platform with clustering, security controls, a SQL rules engine, and integrations to databases and event systems.


ejabberd
Scalable real-time messaging server for XMPP, MQTT, and SIP
ejabberd is an Erlang/OTP-based messaging server providing XMPP chat and presence, MQTT broker capabilities for IoT, and SIP services for real-time communications.

Valkey
High-performance key/value datastore for caching and real-time workloads
Valkey is an open-source, Redis-compatible key/value datastore optimized for caching, queues, and other real-time workloads, with clustering, replication, and extensibility.


OwnTracks Recorder
Store and serve OwnTracks location data via MQTT or HTTP
Lightweight OwnTracks location data recorder that ingests MQTT/HTTP publishes, stores them locally without an external DB, and exposes a REST/WebSocket API and web UI.

Tinode
Instant messaging server with multi-platform clients and APIs
Tinode is an open source instant messaging platform with a Go backend, web/mobile clients, JSON WebSocket and gRPC APIs, and support for one-to-one and group chat.



