功能对比
本页详细列出了不同部署模式所支持的具体功能对比。
核心功能
功能 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
MQTT 5.0 Broker | |||||
MQTT over QUIC | |||||
MQTT 扩展 | 共享订阅 排他订阅 延迟发布 自动订阅 主题重写 | ||||
多协议网关 | |||||
异地备份 | 已规划 | ||||
数据持久化 | N/A | N/A | 将于 EMQX 5.4 发布(预览功能) 基于 RocksDB 实现高可靠、低时延的 MQTT 数据持久化 | ||
Schema Registry | 编解码 | ||||
消息编解码 | JSON Avro Protobuf Custom codec (HTTP/gRPC) | ||||
规则引擎 | 基于 SQL 的内置规则引擎 | ||||
Flow 设计器 | Flow 设计器 | ||||
文件传输 | |||||
Kafka 集成 | 将 MQTT 数据传输到 Apache Kafka | ||||
企业级数据集成 | 规则引擎与数据桥接,任意企业系统集成 | ||||
故障排查 | 日志追踪 (Trace) 慢订阅统计 | ||||
Cloud-Native & K8s | N/A | N/A | 部署方式 | ||
边缘计算 | Neuron NanoMQ |
可扩展性与性能
可扩展性/性能 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
可扩展性 | 单集群支持 MQTT 并发连接数高达 1 亿条 | 单集群支持 MQTT 并发连接数高达 1 亿条 | 自动扩展,最多 1,000 条连接 | 无限制 | 高度可扩展,EMQX 5.0 达成 1 亿 MQTT 连接 |
高可用性 | 无主集群 | 无主集群 | 无主集群 | 无主集群 | |
可靠性 | 基于内存的会话存储 | 基于 RocksDB 的会话持久化 | N/A | N/A | 基于 RocksDB 实现高可靠、低时延的 MQTT 数据持久化 |
吞吐量 | 500 万+ MQTT 消息每秒 | 500 万+ MQTT 消息每秒 | 1000 MQTT 消息每秒 | 500 万+ MQTT 消息每秒 | |
延迟 | 1~5 毫秒 | 1~5 毫秒 | 1~5 毫秒 | 1~5 毫秒 | |
SLA 等级 | N/A | N/A | 99.9% 正常运行时间 | 最高可达 99.99% 正常运行时间 |
集群架构
集群架构 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
集群节点数 | 20+ | 20+ | 保密信息 | 保密信息 | |
运行时弹性和韧性扩展 | |||||
自动扩展 | |||||
高一致性 | |||||
事务处理 | |||||
网络分区恢复 | |||||
节点疏散 & 集群重平衡 | N/A | N/A | |||
自动集群发现 | N/A | N/A | static: 静态节点列表自动集群 mcast: 采用 UDP 组播模式的自动群集 dns: DNS A 记录自动集群 etcd: Discovery via etcd k8s: Kubernetes 服务自动集群 | ||
Zero Downtime/Hot Upgrades | N/A | N/A | |||
Hot Patch | N/A | N/A | |||
Overload Protection | N/A | N/A | |||
Multi-cluster Management | N/A | N/A | |||
Cluster Metrics | N/A | N/A |
MQTT 与其他连接协议支持
MQTT & 其他连接协议 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
MQTT 3.x | |||||
MQTT 5.0 | |||||
MQTT 保留消息 | |||||
MQTT over TCP | |||||
MQTT over TLS | |||||
MQTT over WebSocket | |||||
MQTT over QUIC | EMQX 是现在全球唯一支持 QUIC 协议的 MQTT 消息服务器。 | ||||
LB (代理协议) | Proxy protocol v1, v2 | ||||
IPv6 支持 | |||||
多协议网关 | |||||
MQTT-SN | |||||
STOMP | |||||
CoAP | |||||
LwM2M | |||||
ExProto | |||||
OCPP | |||||
JT/808 | |||||
GBT32960 |
安全
安全 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
TLS/SSL | EMQX: TLS 1.1, 1.2, 1.3 | ||||
OCSP Stapling | |||||
审计日志 | |||||
SQL 注入保护 | |||||
黑鸭分析 | N/A | N/A | 与 Synopsis 合作 |
认证与授权
认证/授权 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
用户名/密码 | 密码认证 | ||||
JWT | JWT 认证 | ||||
MQTT 5.0 增强认证 | N/A | N/A | MQTT 5.0 增强认证 | ||
LDAP 认证 | |||||
PSK 验证 | 启用 PSK 验证 | ||||
X.509 证书 | |||||
SSO | 单点登录(SSO) | ||||
RBAC | 基于角色的权限管理 | ||||
细粒度访问控制 | |||||
认证数据源 | |||||
ACL 数据源 |
数据集成
数据集成 | 自托管模式 | 云服务模式 | |||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
规则引擎 | |||||
数据桥接 | |||||
MQTT 服务 | |||||
Webhook/HTTP Server | |||||
Apache Kafka/Confluent | |||||
Apache IoTDB | |||||
Apache Pulsar | |||||
AWS Kinesis | |||||
Azure Event Hubs | |||||
Cassandra | |||||
ClickHouse | |||||
DynamoDB | |||||
GCP PubSub | |||||
GreptimeDB | |||||
HStreamDB | |||||
InfluxDB | |||||
Microsoft SQL Server | |||||
MongoDB | |||||
MySQL | |||||
OpenTSDB | |||||
Oracle Database | |||||
PostgreSQL | |||||
RabbitMQ | |||||
Redis | |||||
RocketMQ | |||||
TDengine | |||||
TimeScaleDB | |||||
SAP Event Mesh |
规则引擎
规则引擎 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
客户端事件处理 | 客户端事件 | ||||
内置 SQL 函数 | 内置 SQL 函数 | ||||
jq 函数 | |||||
编解码 | |||||
JSON 编解码 | |||||
Avro 编解码 | |||||
ProtoBuf 编解码 |
可扩展性
可扩展性 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
钩子 | N/A | N/A | 钩子 | ||
插件 | N/A | N/A | 插件 | ||
插件热加载 | N/A | N/A | |||
网关 | N/A | N/A | |||
ExHooks/gRPC | N/A | N/A |
可操作性
可操作性 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
Dashboard | EMQX Dashboard 具备丰富的功能。 可以通过 Dashboard 进行配置的热更新。 | ||||
功能配置 | N/A | N/A | 简洁明了的 HOCON 格式。 | ||
HTTP API | |||||
CLI | |||||
配置热升级 | N/A | N/A | |||
运行审计 |
可观测性
可观测性 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
Dashboard | 通过优雅的 Dashboard 实时监控集群。 | ||||
单节点指标 | |||||
Grafana | |||||
集群指标 | N/A | N/A | |||
告警 | |||||
慢订阅监控 | |||||
主题监控 | |||||
客户端监控 | |||||
Prometheus | |||||
Datadog | 将于 EMQX v5.4 发布 |
云原生与 K8S
云原生 & K8s | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
Docker | N/A | N/A | emqx - Official Image | Docker Hub Docker | ||
Kubernetes Operator | N/A | N/A | EMQX Kubernetes Operator | ||
Terraform | N/A | N/A | EMQX Terraform |
云平台支持
云平台 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
AWS Marketplace | EMQX 已上架 AWS 市场。 AWS Marketplace: EMQX Enterprise on Ubuntu 20.04 | ||||
Azure Marketplace | |||||
GCP Marketplace | |||||
阿里云 | |||||
华为云 | |||||
腾讯云 |
MQTT 开发工具与 SDKs
MQTT 开发工具 & SDKs | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
MQTTX 桌面版 | MQTTX - 学习 MQTT 最好的工具 MQTTX: 你的全功能 MQTT 客户端工具 | ||||
MQTTX 命令行版 | MQTTX CLI: 强大易用的 MQTT 5.0 命令行工具 | ||||
MQTTX Web 版 | 功能丰富并且简单易用 MQTTX Web: 易用的 MQTT 5.0 Websocket 客户端工具 | ||||
MQTT 基准测试工具 | GitHub - emqx/emqtt-bench: 用 Erlang 编写的轻量级 MQTT 基准测试工具。 | ||||
MQTT 负载测试工具 | XMeter - 世界第一的 MQTT 负载测试工具。 | ||||
MQTT & JMeter | GitHub - emqx/mqtt-jmeter: MQTT JMeter 插件 | ||||
MQTT SDK for C | GitHub - nanomq/NanoSDK: NanoSDK - 支持 QUIC 的 MQTT 5.0 兼容 SDK,采用 NNG 风格。 | ||||
MQTT Erlang SDK | GitHub - emqx/emqtt: Erlang MQTT 5.0 客户端 | ||||
MQTT iOS SDK | GitHub - emqx/CocoaMQTT: 为 iOS 和 macOS 编写的 MQTT 5.0 客户端库,使用 Swift 语言。 | ||||
MQTT QUIC 客户端 | GitHub - emqx/quic: 用于 Erlang 和 Elixir 的 QUIC 协议。 |
客户支持服务
客户支持 | 自托管模式 | 云服务模式 | 备注和链接 | ||
---|---|---|---|---|---|
EMQX 开源版 | EMQX 企业版 | EMQX Cloud Serverless | EMQX Cloud 专有版 | ||
技术支持 | 社区和论坛 | 5*8, 7*24 全球支持 | 5*8 全球支持 | 5*8, 7*24 全球支持 | |
架构咨询 | |||||
项目集成 | |||||
定制开发 |