All Products
Search
Document Center

ApsaraMQ for RabbitMQ:Limits

Last Updated:Dec 13, 2023

ApsaraMQ for RabbitMQ imposes limits on clusters, API calls, and string characters. When you use ApsaraMQ for RabbitMQ, make sure that the limits are not exceeded. Otherwise, exceptions may occur in your program.

Limits on clusters

Item

Serverless Edition

Professional Edition

Enterprise Edition

Enterprise Platinum Edition

vhosts per instance

Maximum value: 200.

Valid values: number of queues to 200.

Maximum value: 200.

Maximum value: 4096.

Connections per instance

Maximum value: 10000.

Four times the number of queues.

Valid values: 1000 to 5000.

Purchase a connection quota based on the instance specification.

A free quota of at least 2,000 connections is provided for an instance. The maximum number of connections per instance is 10,000.

Purchase a connection quota based on the instance specification.

A free quota of 50,000 connections is provided for an instance. The maximum number of connections per instance is 100,000.

Exchanges per vhost

Equal to the number of queues.

Equal to the number of queues.

Equal to the number of queues.

None

Bindings per vhost

10 times the number of queues.

Valid values: 4096 to 20000.

10 times the number of queues.

Valid values: 4096 to 20000.

10 times the number of queues.

Valid values: 4096 to 20000.

None

Queues per instance

Maximum value: 6000.

Maximum value: 6000.

Maximum value: 6000.

Maximum value: 80000.

Queues bound to an exchange

Maximum value: 256.

Maximum value: 256.

Maximum value: 256.

Maximum value: 256.

If you want to increase the quota, contact Alibaba Cloud technical support.

Consumers per queue

Four times the number of queues.

Valid values: 800 to 5000.

Four times the number of queues.

Valid values: 50 to 5000.

Four times the number of queues.

Valid values: 800 to 5000.

None

Channels per connection

Valid values: number of queues to 2048.

  • If the number of queues is less than 2,048, the maximum number of channels per connection is equal to the number of queues.

  • If the number of queues is equal to or greater than 2,048, the maximum number of channels per connection is 2,048.

Valid values: 64 and number of queues.

  • If the number of queues is less than or equal to 64, the number of channels per connection is 64.

  • If the number of queues is greater than 64, the number of channels per connection is equal to the number of queues.

Valid values: number of queues to 2048.

  • If the number of queues is less than 2,048, the maximum number of channels per connection is equal to the number of queues.

  • If the number of queues is equal to or greater than 2,048, the maximum number of channels per connection is 2,048.

Maximum value: 3000.

Message size

Maximum value: 1 MB.

Maximum value: 64 KB.

Maximum value: 1 MB.

  • If a message is smaller than 64 KB in size, one API call is counted to process the message data.

  • If a message is larger than 64 KB in size, one API call is counted to process each 4 KB of the excess message data.

Maximum value: 1 MB.

Maximum delay period for delayed messages

24 hours

24 hours

24 hours

7 days

Maximum retention period for messages

3 days

3 days

3 days

3 days

Maximum number of times that a message can be requeued

16

16

16

64

Retry interval for time-out messages

5 minutes

60 seconds

5 minutes

30 minutes

Limits on API calls

Important
  • Serverless Edition, Professional Edition, and Enterprise Edition instances: The number of calls to an API operation is limited, and the total number of calls to all API operations is limited by the peak transactions per second (TPS) that you purchase.

  • Enterprise Platinum Edition instances: The number of calls to an API operation is not limited, but the total number of calls to all API operations is limited by the peak TPS that you purchase.

Item

Operation

Serverless Edition

Professional Edition

Enterprise Edition

Enterprise Platinum Edition

Synchronous message receiving on an instance

basicGet

500 TPS

500 TPS

500 TPS

None

Queue clearance on an instance

purgeQueue

500 TPS

500 TPS

500 TPS

None

Exchange creation on an instance

exchangeDeclare

500 TPS

500 TPS

500 TPS

None

Exchange deletion on an instance

exchangeDelete

500 TPS

500 TPS

500 TPS

None

Queue creation on an instance

queueDeclare

500 TPS

500 TPS

500 TPS

None

Queue deletion on an instance

queueDelete

500 TPS

500 TPS

500 TPS

None

Binding creation on an instance

queueBind

500 TPS

500 TPS

500 TPS

None

Binding deletion on an instance

queueUnbind

500 TPS

500 TPS

500 TPS

None

Message restoration on an instance

basicRecover

500 TPS

500 TPS

500 TPS

None

Message requeuing on an instance

  • basicReject(requeue=true)

  • basicNack(requeue=true)

20 TPS

20 TPS

20 TPS

None

Limits on string characters

Item

Limit

Queue name

  • A queue name can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@).

  • A queue name must be 1 to 255 characters in length.

Exchange name

  • An exchange name can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@).

  • An exchange name must be 1 to 255 characters in length.

vhost name

  • A vhost name can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@).

  • A vhost name must be 1 to 255 characters in length.

Binding key

  • Normal binding keys

    • A binding key can only contain letters, digits, hyphens (-), underscores (_), periods (.), forward slashes (/), and at signs (@).

    • A binding key must be 1 to 255 characters in length.

  • Topic binding keys

    • A binding key can contain only letters, digits, hyphens (-), underscores (_), asterisks (*), periods (.), number signs (#), forward slashes (/), and at signs (@).

    • A binding key must be 1 to 255 characters in length.

    • A binding key cannot start or end with a period (.). If a binding key starts with a number sign (#) or an asterisk (*), the number sign (#) or asterisk (*) must be followed by a period (.). If the binding key ends with a number sign (#) or an asterisk (*), the number sign (#) or asterisk (*) must be preceded by a period (.). If a number sign (#) or an asterisk (*) is used in the middle of a binding key, the number sign (#) or asterisk (*) must be preceded and followed by a period (.).

Consumer tag

  • A consumer tag can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@).

  • A consumer tag must be 1 to 255 characters in length.

Message ID

  • A message ID can contain only letters, digits, hyphens (-), underscores (_), periods (.), number signs (#), forward slashes (/), and at signs (@).

  • A message ID must be 1 to 63 characters in length.