Comparison Type | Comparison Item | TDMQ for RabbitMQ Serverless Edition | Open-Source/Self-Built RabbitMQ |
Compatibility | Protocol | Compatible with the AMQP 0-9-1 protocol and the open-source RabbitMQ clients. | AMQP 0-9-1, AMQP 1.0, STOMP, MQTT, HTTP(S), and WebSockets. |
| Client | Storage-compute separation architecture. | Based on the RabbitMQ community edition, open source/self-built RabbitMQ carries risks such as failure to handle message backlogs and split-brain. |
Message capability | Delayed message | Serverless Edition supports delays of any duration with second-level accuracy, is compatible with the x-delayed-message plugin, and ensures that massive backlogs do not affect cluster performance. For details, see Configuring Delayed Messages. | This is implemented by using plugins or by transferring messages to target queues when their time-to-live (TTL) expires. |
| Transaction message | Not supported. | Supported. |
| Sequential message | Not supported. | Supported. |
| Message priority | Not supported. | Supported. |
| Message retry mechanism | Supported. If an acknowledgment response is not received within a certain period during message consumption, the message will be redelivered. The retry interval is 30 minutes, with a maximum of 16 retries. If this limit is exceeded, the message will be discarded or sent to a dead-letter exchange. | Not supported. Open source/self-built RabbitMQ does not support skipping the consumption of problematic messages or processing newly produced messages. This leads to massive message backlogs, which in turn cause memory issues and eventually service crashes. |
Permission | Permission control | Open-source console authorization. | |
Observability | Monitoring metric | Comprehensive metrics covering four dimensions: cluster, vhost, exchange, and queue, facilitating rapid issue location. | Manual configuration of metrics is required: Solution 1: Management UI provides abundant metrics, but requires building a self-managed system for metric storage and display. Solution 2: Implement the configuration of monitoring metrics through Prometheus and Grafana. |
| Message trace | Precise message queries by message ID and massive message queries by queue are supported. A visual display of the message lifecycle from production and enqueue to delivery and consumption is provided to facilitate rapid issue location. Trace viewing is supported for special scenarios where dead letters, redeliveries, and delayed messages occur. | Message trace information is stored in text format within the server's log files, making querying and locating issues less efficient. |
Comparison Type | Comparison Item | TDMQ for RabbitMQ Serverless Edition | Open-Source/Self-Built RabbitMQ |
High availability | Underlying architecture | Storage-compute separation architecture. | Based on the RabbitMQ community edition, open source/self-built RabbitMQ carries risks such as failure to handle message backlogs and split-brain. |
| Cross-AZ high-availability deployment | Multi-AZ deployments are supported by default. | Custom development of deployment solutions and parameters is required. |
| Service availability | 99.95% SLA. | Self-managed Ops and support. |
| Data reliability | Three-replica data storage. | Synchronization of multiple replicas may impact cluster performance. |
| Message backlogs | High performance ensures that services are unaffected by massive message backlogs. | The capability to resist message backlogs is weak, which may easily lead to memory overload. |
Scalability | TPS upper limit | There is no theoretical upper limit, and the system supports horizontal scale-out. | There is an upper limit, which is affected by the performance of the underlying machines. |
| Scaling | The same version supports rapid horizontal scaling (scale-in coming soon). | Manual upgrade of the underlying machine specifications is required. Restarting the open-source console is involved. |
Ops availability | Out-of-the-box | It is a mature, out-of-the-box deployment and monitoring solution. | The open-source console is required to manage resources. |
| Monitoring and alarms | A visual monitoring dashboard interface is provided, covering 4 dimensions, 6 major categories, and over 90 monitoring metrics. | Methods for obtaining monitoring metrics: Solution 1: Use Management UI to obtain metrics and build your own metric storage and display system. Option 2: Integrate with external Prometheus and Grafana for implementation. |
| Message query | Precise message queries by message ID or by queue are supported. The message trace can display the complete lifecycle of a message. | Message trace information in text format needs to be queried from log files on the server, resulting in low efficiency for querying and locating issues. |
| Message trace (coming soon) | | |
Service | Service support | Tencent Cloud provides professional 24/7 ticket service support. | Self-Ops. |
Comparison Type | Comparison Item | TDMQ for RabbitMQ Serverless Edition | Open-Source/Self-Built RabbitMQ |
Basic configuration | Type | The types of direct, fanout, headers, and topic are supported. | The types of direct, fanout, headers, topic, x-delayed-message, and x-consistent-hash are supported. |
| Persistence | Supported by default. | Configuration of both persistence and non-persistence is supported. |
Parameter configuration | Internal | Not supported. | Supported. |
| Alternate exchange | Not supported. | Supported. |
Comparison Type | Comparison Item | TDMQ for RabbitMQ Serverless Edition | Open-Source/Self-Built RabbitMQ |
Basic configuration | Type | No configuration is required. Only the distributed high-availability cluster is supported. | Configuration is required. The following types are supported: Classic: classic mirrored queue. Quorum: quorum queue. |
| Node | No configuration is required. The service is Ops-free. | Configuration is required. Nodes can be selected. |
| Persistence | Supported by default. | Both persistence and non-persistence are supported. |
Parameter configuration | Max length | No configuration is required, and massive message backlogs are supported. | Configuration is required to prevent crashes caused by memory issues due to excessive message backlogs. |
| Max length bytes | No configuration is required, and massive message backlogs are supported. | Configuration is required to prevent crashes caused by memory issues due to excessive message backlogs. |
| Max in memory length | No configuration is required, and massive message backlogs are supported. | Configuration is required to prevent crashes caused by memory issues due to excessive message backlogs. |
| Max in memory bytes | No configuration is required, and massive message backlogs are supported. | Configuration is required to prevent crashes caused by memory issues due to excessive message backlogs. |
| Delivery limit | No configuration is required. The fixed value is 16 times by default. | Configuration is required. |
| Message TTL | Supported. | Supported. |
| Dead letter exchange | Supported. | Supported. |
| Dead letter routing key | Supported. | Supported. |
| Single active consumer | Not supported. | Supported. |
Comparison Item | Feature Description | TDMQ for RabbitMQ Managed Edition | Open-Source/Self-Built RabbitMQ |
High availability | Cross-AZ high-availability deployment | Cross-AZ high-availability deployment is supported, and a mature fault recovery solution is provided. | Custom development of deployment solutions and parameters is required. |
| Service availability | Three-node cluster guarantees a 99.95% SLA. | Self-managed Ops and support. |
| Data reliability | Queue persistence and mirrored queues are supported by three-node clusters by default. | Configuration of mirroring policy parameters is required. |
Scalability | Scaling | Productized horizontal/vertical scaling is supported, and configuration changes of the cluster specifications can be performed as needed. | Manual upgrade of the underlying machine specifications is required. Restarting the open-source console is involved. |
Ops availability | Out-of-the-box | It is a mature, out-of-the-box deployment and monitoring solution. | The open-source console is required to manage resources. |
| Monitoring and alarms | Multi-dimensional monitoring and alarms for instances, nodes, vhosts, queues, and exchanges are supported. | Methods for obtaining monitoring metrics: Solution 1: Use Management UI to obtain metrics and build your own metric storage and display system. Option 2: Integrate with external Prometheus and Grafana for implementation. |
| Message query | Message information and details can be queried based on the queue and message parameters. | Not supported. |
Security and compliance | Control operation permission control | Console operations are based on Tencent Cloud CAM control permissions, ensuring security and compliance. | Fine-grained control of the control operation permissions is challenging. |
| Operation traceability | Not supported. | |
Service | Service support | Tencent Cloud provides professional 24/7 ticket service support. | Self-Ops. |
Feedback