Technical Specification
# Preface
This document is a functional specification for Apusic Distributed Message Queue for MQTT (Apusic Distributed Message Queue, referred to as: ADMQ for MQTT), helping users understand in detail the product functions and technical specifications of ADMQ for MQTT.
# Target Audience
This document is intended for IT information business leaders, R&D managers, software project managers, software architects, and operations engineers.
# Related Documents
To learn more about ADMQ for MQTT, please refer to the following ADMQ for MQTT product documentation set:
| No. | Document | Description |
|---|---|---|
| 1 | Apusic Distributed Message Queue for MQTT Quick Start Guide | Briefly introduces how to quickly get started with ADMQ for MQTT. |
| 2 | Apusic Distributed Message Queue for MQTT Installation Guide | Details how to install ADMQ for MQTT on various operating systems, as well as service start/stop operations. |
| 3 | Apusic Distributed Message Queue for MQTT Message Engine User Manual | Details the use, configuration, and management of ADMQ for MQTT message engine features and supporting tools. |
| 4 | Apusic Distributed Message Queue for MQTT Console User Manual | Details the use and operation of the ADMQ for MQTT console. |
| 5 | Apusic Distributed Message Queue for MQTT Development Guide | Details how to develop ADMQ for MQTT client applications in various development languages. |
| 6 | Apusic Distributed Message Queue for MQTT Migration Guide | Details the migration from MQTT Broker to ADMQ for MQTT. |
| 7 | Apusic Distributed Message Queue for MQTT Operations Manual | Details monitoring, operations, and security hardening for ADMQ for MQTT. |
| 8 | Apusic Distributed Message Queue for MQTT Performance Optimization Guide | Details performance tuning for ADMQ for MQTT. |
# Technical Support
ADMQ for MQTT provides comprehensive technical support services. You can obtain technical support through the following channels:
- Website: www.apusic.com
- Phone: 400-855-5800
- Email: support@apusic.com
- Kingdee Cloud Community: https://vip.kingdee.com/?productId=73&productLineId=14&lang=zh-CN
When seeking technical support, please provide the following information:
- Your name
- Company information and contact details
- Operating system and its version
- Product version number
- Detailed information such as logs and screenshots of the exception or error
# Product Version and Compatibility
# Version Information
| Attribute | Description |
|---|---|
| Product Name | Apusic Distributed Message Queue |
| Product Version | ADMQ for MQTT V2.0.6.587 |
| Release Date | March 2026 |
# Protocol Compatibility
| Protocol | Status | Description |
|---|---|---|
| MQTT 3.1 | Supported | Basic MQTT protocol |
| MQTT 3.1.1 | Supported | Mainstream MQTT protocol version |
| MQTT 5.0 | Supported | Latest MQTT protocol version, supporting more features |
| MQTT over TCP | Supported | Standard TCP access |
| MQTT over SSL/TLS | Supported | Encrypted TCP access |
| MQTT over WebSocket | Supported | Web client access |
| MQTT over WebSocket Secure | Supported | Encrypted WebSocket access |
| MQTT over QUIC | Supported | Low-latency access based on QUIC |
# Client Compatibility
ADMQ for MQTT V2.0.6.587 is compatible with the following MQTT clients:
| Client Type | Supported Version | Description |
|---|---|---|
| Eclipse Paho Java | 1.2.x+ | Official Java client |
| Eclipse Paho Python | 1.5.x+ | Official Python client |
| Eclipse Paho C | 1.3.x+ | Official C client |
| MQTT.js | 4.x+ | Node.js/Browser client |
| EMQX Client | 5.x+ | Official EMQX client |
| Other Standard MQTT Clients | - | Any third-party client following the MQTT protocol |
# Core Feature Specifications
# MQTT Basic Features
| Feature | Description | Status |
|---|---|---|
| Publish/Subscribe Model | Supports one-to-many message distribution mode | Supported |
| QoS 0 | At most once message delivery | Supported |
| QoS 1 | At least once message delivery | Supported |
| QoS 2 | Exactly once message delivery | Supported |
| Retained Message | Retains the last message for a topic, new subscribers receive immediately | Supported |
| Will Message | Automatically publishes a message when client disconnects abnormally | Supported |
| Session Persistence | Saves subscription relationships and offline messages | Supported |
| Clean Session | Supports clean session mode | Supported |
| MQTT 5.0 New Features | Message expiry, topic alias, user properties, shared subscriptions, etc. | Supported |
# Access Methods
| Feature | Description | Status |
|---|---|---|
| TCP Access | Standard MQTT TCP port 1883 | Supported |
| SSL/TLS Access | Encrypted MQTT TCP port 8883 | Supported |
| WebSocket Access | Port 8083 | Supported |
| WebSocket Secure Access | Port 8084 | Supported |
| QUIC Access | Port 14567 | Supported |
# Authentication and Authorization
| Feature | Description | Status |
|---|---|---|
| Built-in Database Authentication | Username/password authentication | Supported |
| JWT Authentication | JSON Web Token based authentication | Supported |
| SCRAM Authentication | SCRAM challenge-response mechanism | Supported |
| MySQL/PostgreSQL/HTTP Authentication | External data source authentication | Supported |
| ACL Access Control | Permission control based on username/client ID/topic | Supported |
| Super User | Bypasses all ACL checks | Supported |
# High Availability and Clustering
| Feature | Description | Status |
|---|---|---|
| Stateless Node Cluster | Stateless sharing between nodes, supports horizontal scaling | Supported |
| Automatic Failure Recovery | Automatically removes faulty nodes and restores service | Supported |
| Session Persistence | Supports session data persistence | Supported |
| Data Backup and Restore | Supports cluster configuration and data backup/restore | Supported |
# Extension Capabilities
| Feature | Description | Status |
|---|---|---|
| Rule Engine | SQL-based message processing rules | Supported |
| Data Bridge | Integration with databases, message queues, HTTP services, etc. | Supported |
| Topic Rewrite | Automatically replaces source topic with destination topic | Supported |
| Auto Subscribe | Automatically subscribes to specified topics after client connection | Supported |
| Shared Subscription | MQTT 5.0 shared subscription, load-balanced distribution | Supported |
# Security Features
| Feature | Description | Status |
|---|---|---|
| TLS/SSL Encryption | Supports transport layer encryption | Supported |
| National Secret SSL | Supports national secret algorithm encryption transmission | Supported |
| Allow/Deny List | Supports banning by client ID, username, IP dimension | Supported |
| Audit Logs | Records key operation logs | Supported |
| RBAC Role Management | Supports role-based access control | Supported |
# Operations Management
| Feature | Description | Status |
|---|---|---|
| Prometheus Metrics | Supports Prometheus metrics export | Supported |
| Grafana Dashboard | Supports visual monitoring | Supported |
| Log Management | Supports log level configuration and log rotation | Supported |
| Alert Management | Supports system alert viewing and clearing | Supported |
| Slow Subscription Detection | Detects subscriptions with long message delivery time | Supported |
| Log Trace | Supports client/topic/IP level log tracing | Supported |
# Technical Specifications
# System Requirements
| Component | Minimum Requirement | Recommended Configuration |
|---|---|---|
| CPU | 4 cores | 8 cores or more |
| Memory | 8 GB | 16 GB or more |
| Disk | 100 GB SSD | 500 GB or more SSD |
| Network | 1 Gbps | 10 Gbps |
| Operating System | Linux (CentOS 7+, Ubuntu 18.04+, Kylin, UnionTech) | - |
# Cluster Scale
| Deployment Mode | Node Count | Description |
|---|---|---|
| Standalone | 1 | Development and test environment |
| Cluster | 3-5 | Minimum production environment configuration |
| Large Scale | 5+ | Massive device access scenarios |
# Performance Metrics
| Metric | Single Node | 3-Node Cluster | Description |
|---|---|---|---|
| Concurrent Connections | 500K | 1M+ | MQTT client concurrent connections |
| Message Throughput | 100K/s | 300K/s | Message send/receive rate |
| Latency | 1ms | 1ms | P99 message delivery latency |
| Failure Recovery | <30s | <30s | Node failover time |
# Network Ports
| Port | Purpose | Description |
|---|---|---|
| 1883 | MQTT TCP | Standard MQTT access |
| 8883 | MQTT over SSL | Encrypted MQTT access |
| 8083 | MQTT over WebSocket | WebSocket access |
| 8084 | MQTT over WSS | Encrypted WebSocket access |
| 14567 | MQTT over QUIC | QUIC protocol access |
| 18083 | Dashboard HTTP | Management backend web interface |
| 12305 | Console HTTP | Console web interface (HTTP) |
| 12306 | Console HTTPS | Console web interface (HTTPS) |
| 4370 | Erlang Distribution | Inter-node cluster communication |
| 5370 | Erlang Distribution | Inter-node cluster communication (SSL) |
# Supported Storage
| Type | Support | Description |
|---|---|---|
| EXT4 | Supported | Linux standard filesystem |
| XFS | Recommended | High-performance filesystem |
| NFS | Supported | Network filesystem (requires configuration) |
| Multi-disk Mounting | Supported | Supports multiple data directories |
# Deployment Modes
| Deployment Mode | Node Count | Description |
|---|---|---|
| Standalone Mode | 1 | Suitable for development and test environments, no high availability guarantee |
| Cluster Mode | 3-10+ | Suitable for production environments, supports high availability and horizontal scaling |
| Multi-Cluster Mode | Multiple clusters | Suitable for cross-region, multi-data center deployment |
# Backup and Disaster Recovery
# Data Backup
| Backup Method | Description |
|---|---|
| Configuration Backup | Backs up cluster configuration information |
| Data Backup | Backs up user data, ACL rules, retained messages, etc. |
| Cross-Cluster Replication | Implements cross-cluster message synchronization through data bridge |
# Disaster Recovery Capabilities
| Disaster Recovery Level | Capability |
|---|---|
| Node Failure | Automatic failover to ensure service continuity |
| Disk Failure | Multi-node deployment, single disk failure does not affect service |
| Data Center Level | Supports cross-data center active-active deployment |
| Data Security | Supports periodic backup and restore |