Updated on 2025-11-20 GMT+08:00

Notes and Constraints

This section describes the notes and constraints on Distributed Message Service (DMS) for RabbitMQ. Use your RabbitMQ instances as prescribed to avoid program exceptions.

Any instability caused by ignorance of the notes and constraints is not covered by the SLA.

Instance

Table 1 Notes and constraints (3.x.x)

Item

Constraint

Version

Server version: 3.8.35 and 3.12.13

Number of connections

The allowed number of connections differs by instance specifications and mode (single-node or cluster). For details, see Specifications.

Channels

Number of channels that can be created for a single connection: ≤ 2047

Memory high watermark

≤ 40%

If the memory usage exceeds 40%, the high memory watermark may be triggered, blocking publishers.

Disk high watermark

≥ 5 GB

If the remaining disk space is less than 5 GB, the high disk watermark is triggered, blocking publishers.

cluster_partition_handling

pause_minority

When a network partition occurs in a cluster, cluster brokers will determine whether they are in a minority, that is, fewer than or equal to the total number of brokers. Minority brokers pause when a partition starts, detect the network status periodically, and start again when the partition ends. If queue mirroring is not enabled, queue replicas in the minority will no longer be available for message creation and retrieval.

This strategy sacrifices availability for data consistency.

RabbitMQ plug-ins

RabbitMQ plug-ins can be used for testing and service migration. Do not use them for production. Reliability issues caused from using plug-ins are not within commitments on SLAs.

VPC, subnet, and AZ

After an instance is created, its VPC, subnet, and AZ cannot be modified.

Storage space per broker

The storage space can be expanded but cannot be reduced.

Broker quantity

  • The broker quantity can be increased but cannot be decreased for a cluster instance.
  • Services may temporarily stutter during the broker increase. Ensure that your client can auto-reconnect. Modify specifications during off-peak hours.
  • This function is not available for single-node instances.

Broker Flavor

  • The broker flavor can be increased or decreased.
  • For single-node instances, nodes are restarted and services may temporarily stutter in minutes during the modification. Ensure that your client can auto-reconnect. Modify specifications during off-peak hours.
  • For cluster instances not configured with mirrored/quorum queues, nodes are restarted in sequence and services may stutter in minutes during the modification. Ensure that your client can auto-reconnect. Modify specifications during off-peak hours.
  • For cluster instances not configured with mirrored/quorum queues, nodes are restarted in sequence and services may stutter for several seconds during the modification. Ensure that your client can auto-reconnect. Modify specifications during off-peak hours.
  • During the modification of cluster instances, connections to the changed nodes will be switched to other nodes, posing overload risks (for example, connections excess or memory high watermark) on them. You are advised to use them within the instance specifications. For more information, see Specifications.
  • Persistent exchanges, queues, and messages are required. Otherwise, messages may be lost after node restarts.

ping command

  • Single-node instances support the ping command with both private and public connection addresses.
  • Cluster instances only support the ping command with private connection addresses.
Table 2 Notes and constraints (AMQP-0-9-1)

Item

Constraint

Version

The service version can be AMQP-0-9-1.

Number of connections

The allowed number of connections differs by instance specifications and mode (single-node or cluster). For details, see Specifications.

Channels

Number of channels that can be created for a single connection: ≤ 2000

VPC, subnet, and AZ

After an instance is created, its VPC, subnet, and AZ cannot be modified.

Storage space per broker

The storage space can be expanded but cannot be reduced.

Broker Flavor

  • Can be increased only.
  • For single-node and cluster instances, intermittent disconnections may occur for several seconds during the modification. Ensure that your client can auto-reconnect. Modify specifications during off-peak hours.

ping command

  • Single-node instances support the ping command with both private and public connection addresses.
  • Cluster instances only support the ping command with private connection addresses.

TPS

Producing and consuming messages share TPS. TPS varies with product flavors. For more information, see Specifications.

When TPS reaches the upper limit, the channel is disconnected and the error message "denied for too many requests" is displayed.

Maximum channels per connection

2000

Maximum channels of an instance

  • Before Sep 2025: 20,000
  • Sep 2025 and later: Only the maximum number of channels per connection is limited.

Consumption timeout

  • Before Jul 2025: 1 minute
  • Jul 2025 and later: 30 minutes

Virtual Host

Table 3 Notes and constraints (3.x.x)

Item

Constraint

Deleting a virtual host

The default virtual host automatically generated in instance creation cannot be deleted.

Vhost

  • When a virtual host name starts with a special character, such as a period (.), the monitoring data may not be displayed. When a virtual host name contains special characters such as percent (%), vertical bar (|), or slash (/), this name is not consistently displayed on the monitoring page. The special characters are displayed as underscores (_) instead. For example, virtual host Vhost.1%1|2_3/ is displayed as Vhost.1_1_2_3_ in monitoring.
  • On Cloud Eye, a special character (.) is counted as five characters. If the name of a virtual host of a RabbitMQ 3.x.x instance contains periods (.) and the counted total length exceeds 256 characters, monitoring data may not be displayed.
Table 4 Notes and constraints (AMQP-0-9-1)

Item

Constraint

Deleting a virtual host

The default virtual host automatically generated in instance creation cannot be deleted.

Vhost

When a virtual host name contains special characters such as percent (%), vertical bar (|), slash (/), or period (.), this name is not consistently displayed on the monitoring page. The special characters are displayed as underscores (_) instead. For example, virtual host Vhost.1%1|2_3/ is displayed as Vhost_1_1_2_3_ in monitoring.

Exchange

Table 5 Notes and constraints (3.x.x)

Item

Constraint

Default exchange

Seven exchanges are automatically generated by default after virtual host creation. These exchanges include (AMQP default), amq.direct, amq.fanout, amq.headers, amq.match, amq.rabbitmq.trace, and amq.topic.

Binding an exchange

  • For RabbitMQ 3.x.x, the exchange (AMQP default) cannot be bound with any exchange.
  • Internal exchanges can only be bound with exchanges and not queues.

Deleting an exchange

The default exchange cannot be deleted.

Table 6 Notes and constraints (AMQP-0-9-1)

Item

Constraint

Binding an exchange

Exchanges can only be bound with queues and not exchanges.

Exchange

When an exchange name contains special characters such as percent (%), vertical bar (|), slash (/), or period (.), this name is not consistently displayed on the monitoring page. The special characters are displayed as underscores (_). For example, exchange Exchange.1%1|2_3/ is displayed as Exchange_1_1_2_3_ in monitoring.

Maximum bindings per exchange

256

Queue

Table 7 Notes and constraints (3.x.x)

Item

Constraint

Binding a queue

  • The exchange (AMQP default) cannot be bound with any queue.
  • Internal exchanges can only be bound with exchanges and not queues.

Lazy queues

Available for RabbitMQ 3.8.35 and later.

Quorum queues

Available for RabbitMQ 3.8.35 and later.

Single active consumer

Available for RabbitMQ 3.8.35 and later.

Queue

  • When a queue name of an instance starts with a special character, such as a period (.), the monitoring data may not be displayed. When a queue name contains special characters such as percent (%), vertical bar (|), or slash (/), this name is not consistently displayed on the monitoring page. The special characters are displayed as underscores (_) instead. For example, queue Queue.1%1|2_3/ is displayed as Queue.1_1_2_3_ in monitoring.
  • On Cloud Eye, a special character (.) is counted as five characters. If the name of a queue of a RabbitMQ 3.x.x instance contains periods (.) and the counted total length exceeds 256 characters, monitoring data may not be displayed.
Table 8 Notes and constraints (AMQP-0-9-1)

Item

Constraint

Queue

When a queue name contains special characters such as percent (%), vertical bar (|), slash (/), and period (.), this name is not consistently displayed on the monitoring page. The special characters are displayed as underscores (_). For example, queue Queue.1%1|2_3/ is displayed as Queue_1_1_2_3_ in monitoring.

Maximum consumers per queue

5,000

Message

Table 9 Notes and constraints (3.x.x)

Item

Constraint

Message size

≤ 50 MB per message

Do not send a message larger than 50 MB. Otherwise, the message will fail to be created.

Table 10 Notes and constraints (AMQP-0-9-1)

Item

Constraint

Message size

≤ 4 MB per message

Do not send a message larger than 50 MB. Otherwise, the message will fail to be created.

Message retention duration

2 days by default

Maximum retention of a delayed message

7 days

Maximum message retries

16 times

When retry times are exceeded and no dead letter queue is configured, the message is discarded. Otherwise, the message is routed to the dead letter queue.

Transaction message

Not supported.