Feature Comparison
This page lists features supported across different deployment types in detail.
Core / Enterprise Features
Features | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
MQTT 5.0 Broker | Complete MQTT 5.0 protocol implementation | |||
MQTT over QUIC | Globally Poineering Support In development for Cloud | |||
MQTT Add-ons | Shared subscription Exclusive subscription Delayed publish Auto-subscription Topic rewrite More customization options | |||
Multi-protocol Gateways | More industry device access | |||
Multi-tenancy | Higer system flexibility and utilization (Coming soon) | |||
Cluster Linking | Seamless connection of devices and application data | |||
Event History | Client fault diagnosis and behavioral audit | |||
Message Queuing | Unified architecture for data transmission and analysis (Coming soon) | |||
Stream Processing | Higher reliability and disaster recovery capabilities (Coming soon) | |||
Data Persistence | N/A | N/A | Improved stability and reliability | |
Schema Registry | Schema Registry ensures data consistency and compatibility | |||
Message Codec | Flexible message format conversion for: JSON Avro Protobuf Custom codec (HTTP/gRPC) | |||
Schema Validation | Ensuring integrity and legality of messages | |||
Rule Engine | SQL-based built-in Rule Engine and real-time data processing | |||
Flow Designer | Easy orchestration of data integration | |||
File Transfer | Unified platform data transmission | |||
Kafka Integration | Stream MQTT Data into Apache Kafka | |||
Enterprise Data Integrations | Accelerate business development and delivery speed | |||
Troubleshooting | Log Trace Slow Subscriptions | |||
Cloud-Native & K8s | N/A | N/A | Reduce system deployment and management costs | |
Edge Computing | Reduce data transmission latency and costs Neuron NanoMQ |
Scalability and Performance
Scalability/Performance | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
Scalability | Up to 100 nodes cluster Up to 100 million MQTT connections per cluster | 1000 auto scale | 1000 - unlimited | Reaching 100M MQTT connections with EMQX 5.0 |
Availability | Core-Replica cluster | Masterless cluster | Masterless cluster | |
Reliability | Data persistence in RocksDB with highly available replication | Session persistence | Session persistence | Highly Reliable MQTT Data Persistence Based on RocksDB |
Performance | 5M+ MQTT messages per second | 1000 MQTT messages per second | 5M+ MQTT messages per second | |
Latency | 1~5 millisecond | 1~5 millisecond | 1~5 millisecond | |
SLA | N/A | 99.9% uptime | Up to 99.99% uptime |
Clustering Architecture
MQTT & Connectivity | Self-Hosted | MQTT as a Service | Notes and Links | ||
---|---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | |||
MQTT 3.x | |||||
MQTT 5.0 | |||||
MQTT Retainer | |||||
MQTT over TCP | |||||
MQTT over TLS | |||||
MQTT over WebSocket | |||||
MQTT over QUIC | EMQX is now the only MQTT broker in the world that supports QUIC transport. | ||||
LB (Proxy Protocol) | Proxy protocol v1, v2 | ||||
LB (Custom) | GmSSL Smooth connection migration | ||||
IPv6 Support | |||||
Multi-protocol Gateway | |||||
MQTT-SN | |||||
STOMP | |||||
CoAP | |||||
LwM2M | |||||
ExProto | |||||
OCPP | |||||
JT/808 | |||||
GB/T 32960 |
MQTT and Connectivity
MQTT & Connectivity | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
MQTT 3.x | ||||
MQTT 5.0 | ||||
MQTT Retainer | ||||
MQTT over TCP | ||||
MQTT over TLS | ||||
MQTT over WebSocket | ||||
MQTT over QUIC | EMQX is now the only MQTT broker in the world that supports QUIC transport. | |||
LB (Proxy Protocol) | Proxy protocol v1, v2 | |||
LB (Custom) | GmSSL Smooth connection migration | |||
IPv6 Support | ||||
Multi-protocol Gateway | ||||
MQTT-SN | ||||
STOMP | ||||
CoAP | ||||
LwM2M | ||||
ExProto | ||||
OCPP | ||||
JT/808 | ||||
GBT32960 |
Security
Security | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
TLS/SSL | Protect data transmission security: TLS 1.1, 1.2, 1.3 | |||
QUIC | Enhance efficiency of weak network and mobile network data transmission | |||
OCSP Stapling | Provide more flexible security practices | |||
Flapping Detect | Detect and intercept frequent online and offline connections | |||
Audit Logs | Support audit tracing for important operations | |||
Dashboard SSO | Secure and simplified authentication processes | |||
Dashboard/REST API RBAC | Minimize permissions to ensure system security | |||
Black Duck Analysis | N/A | N/A | Secure and simplified authentication processes |
Authentication and Authorization
Authentication/Authorization | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
Username/Password | Password-Based Authentication | |||
JWT | JWT Authentication | |||
MQTT 5.0 Enhanced Authentication | N/A | N/A | MQTT 5.0 Enhanced Authentication | |
LDAP Authentication | ||||
PSK Authentication | Enable PSK Authentication | |||
X.509 Certificates | ||||
Fine-grained Access Control | ||||
Authentication Database Backends | ||||
ACL Database Backends |
Data Integration
As EMQX evolves, it supports an expanding range of data integrations, including but not limited to those listed below.
Data Integration | Self-Hosted | MQTT as a Service | ||
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
MQTT Bridge | ||||
Webhook/HTTP Server | ||||
Aliyun Tablestore | ||||
Apache Kafka/Confluent | ||||
Apache IoTDB | ||||
Apache Pulsar | ||||
AWS Kinesis | ||||
AWS S3 | ||||
Azure Event Hubs | ||||
Azure Blob Storage | ||||
Cassandra | ||||
ClickHouse | ||||
Couchbase | ||||
DynamoDB | ||||
Elasticsearch | ||||
GCP PubSub | ||||
GreptimeDB | ||||
HStreamDB | ||||
InfluxDB | ||||
Microsoft SQL Server | ||||
MongoDB | ||||
MySQL | ||||
OpenTSDB | ||||
Oracle Database | ||||
PostgreSQL | ||||
RabbitMQ | ||||
Redis | ||||
RocketMQ | ||||
Snowflake | ||||
Syskeeper | ||||
TDengine | ||||
TimeScaleDB |
Rule Engine
Rule Engine | Self-Hosted | MQTT as a Service | Notes and Links | ||
---|---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | |||
Schema Registry | Ensure data format consistency | ||||
JSON Codec | |||||
Avro Codec | |||||
Protobuf Codec | |||||
Sparkplug B Codec | |||||
JSON Schema Validation | |||||
Avro Validation | |||||
ProtoBuf Validation | |||||
Built-in Functions | Functions available in SQL statements, rich built-in libraries, support custom extensions | ||||
jq Functions | Efficient JSON data processing | ||||
Event Trigger | Client events, event-driven business development | ||||
Schema Validation | |||||
Message Transformation |
Extensibility
Extensibility | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
Hooks | N/A | N/A | Hooks | |
Plugins | N/A | N/A | Plugins | |
Plugin Hot Loading | N/A | N/A | ||
Plugin Hot Configuration | N/A | N/A | ||
Gateways | N/A | N/A | ||
ExHooks/gRPC | N/A | N/A |
Operability
Operability | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
Dashboard | EMQX dashboard is feature-rich. Configs can be hot udpated through dashboard. | |||
Configuration | N/A | N/A | The HOCON format is simple and concise. | |
HTTP API | ||||
CLI | ||||
Config Hot Updates | N/A | N/A | ||
Operational Auditing |
Observability
Observability | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
Dashboard | Monitor clusters in real time with an elegant dashboard | |||
Metrics | Node metrics | |||
Grafana | ||||
Prometheus | ||||
Datadog | ||||
OpenTelemetry | ||||
Cluster Metrics | N/A | N/A | ||
Alarm Alerts | ||||
Slow Subscription Monitoring | ||||
Topic Monitoring | ||||
Client Monitoring | ||||
Log Trace |
Cloud Native and K8S
Cloud Native & K8s | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
Docker | N/A | N/A | emqx - Official Image | Docker HubDocker | |
Kubernetes Operator | N/A | N/A | EMQX Kubernetes Operator | |
Terraform | N/A | N/A | EMQX Terraform |
Cloud Platform Availability
Cloud Platform | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
AWS Marketplace | EMQX is available on AWS Marketplace. AWS Marketplace: EMQX Enterprise on Ubuntu 20.04 | |||
Azure Marketplace | ||||
GCP Marketplace | ||||
AWS | ||||
Azure | ||||
GCP |
MQTT Tools and SDKs
MQTT Tools & SDKs | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
MQTT Desktop Client | MQTT X - The best tool for learning MQTT. MQTTX: Your All-in-one MQTT Client Toolbox | |||
MQTT CLI | MQTTX CLI: A Powerful and Easy-to-use MQTT CLI Tool | |||
MQTT Web Tool | Feature-rich and Easy-to-use. MQTTX Web: Easy-to-use MQTT Websocket Client Tool | |||
MQTT Benchmark | GitHub - emqx/emqtt-bench: Lightweight MQTT benchmark tool written in Erlang | |||
MQTT Load Testing | XMeter - The world’s #1 MQTT load testing tool | |||
MQTT & JMeter | GitHub - emqx/mqtt-jmeter: MQTT JMeter Plugin | |||
MQTT SDK for C | GitHub - nanomq/NanoSDK: NanoSDK - MQTT 5.0-compliant SDK with QUIC support in NNG flavor | |||
MQTT Erlang SDK | GitHub - emqx/emqtt: Erlang MQTT 5.0 Client | |||
MQTT iOS SDK | GitHub - emqx/CocoaMQTT: MQTT 5.0 client library for iOS and macOS written in Swift | |||
MQTT QUIC Client | GitHub - emqx/quic: QUIC protocol for Erlang & Elixir |
Support Services
Support Services | Self-Hosted | MQTT as a Service | Notes and Links | |
---|---|---|---|---|
EMQX Enterprise | EMQX Serverless | EMQX Dedicated | ||
Technical Support | 5*8, 7*24 Global Support | 5*8 Global Support | 5*8, 7*24 Global Support | |
Architecture Consulting | ||||
Project Integration | ||||
Custom Development |