ApsaraMQ for RabbitMQ has limits on clusters, characters, and peak transactions per second (TPS). When you use ApsaraMQ for RabbitMQ, ensure that you operate within these limits to prevent program errors.
Cluster limits
Limit | Serverless instances | Subscription instances | |||
Shared | Dedicated | Enterprise Edition | Platinum Edition | Professional Edition | |
Reserved + Elastic/Pay-by-traffic | Reserved + Elastic | ||||
Vhosts per instance | 200 | 2,000 | 200 | 4,096 | 200 |
Exchanges per instance | 6,000 | 10,000 | 6,000 | 80,000 | 6,000 |
Bindings per instance | 20,000 | 20,000 | 20,000 | None | 20,000 |
Queues per instance | 6,000 | 10,000 | 6,000 | 80,000 | 6,000 |
Connections per instance | Maximum connections: 10,000. | Maximum connections: 20,000. | Purchase based on the instance type. Each instance has a free quota of 2,000 connections. The maximum number of connections is 10,000. | Purchase based on the instance type. Each instance has a free quota of 50,000 connections. The maximum number of connections is 100,000. | Number of queues × 4. The number of connections per instance ranges from 1,000 to 5,000. |
Queues per exchange | 256 | 256 Submit a ticket to request a custom quota. After the quota is customized, you cannot downgrade the instance to a shared cluster. | 256 | 256 To request a custom quota, contact Alibaba Cloud technical support. | 256 |
Consumers per queue | Number of queues × 4. The number of consumers per queue ranges from 800 to 5,000. | None | Number of queues × 4. The number of consumers per queue ranges from 800 to 5,000. | No limit | Number of queues × 4. The number of consumers per queue ranges from 50 to 5,000. |
Channels per connection | 2,000 | 3,000 | The number of channels per connection is the minimum of the number of queues and 2,048.
| 3,000 | The number of channels per connection is 64 or the number of queues.
|
Message size | 10 MB | 10 MB | 10 MB | 50 MB | 64 KB |
Maximum delay for delayed messages | 7 days | 7 days Submit a ticket to request a custom quota. After the quota is customized, you cannot downgrade the instance to a shared cluster. | 7 days | 7 days To request a custom quota, contact Alibaba Cloud technical support. | 24 hours |
Maximum message retention period | 3 days | 3 days | 3 days | 3 days | 3 days |
Maximum deliveries | 16 | 16 | 16 | 64 | 16 |
Maximum: 3 hours Default: 5 minutes | Maximum: 12 hours Default: 30 minutes | Maximum: 3 hours Default: 5 minutes | Maximum: 12 hours Default: 30 minutes | Maximum: 10 minutes Default: 1 minute | |
Character limits
Limitations | Limit |
Queue name |
|
Exchange name |
|
Vhost name |
|
Binding key |
|
Consumer tag |
|
Message ID |
|
Throttling thresholds
For information about how TPS is calculated, see Serverless instance calculation rules and Subscription instance TPS calculation rules.
For solutions to TPS throttling, see Solutions for when the total TPS of an instance is throttled and Solutions for when the TPS of a single node is throttled.
Total instance TPS throttling threshold
Instance series | Serverless instances | Subscription instances | ||||||
Edition | Shared | Dedicated | Elastic TPS disabled | Elastic TPS enabled | ||||
Reserved + Elastic/Pay-by-traffic | Reserved + Elastic | Enterprise Edition | Platinum Edition | Professional Edition | Enterprise Edition | Platinum Edition | Professional Edition | |
Throttling threshold | Up to 50,000 TPS | Twice the peak TPS of the basic instance type | The peak TPS of the basic instance type | Twice the peak TPS of the basic instance type, up to 50,000 TPS | Twice the peak TPS of the basic instance type, up to 50,000 TPS | 1.5 times the peak TPS of the basic instance type | ||
Single-node SendMessage TPS throttling threshold
The server limits the SendMessage TPS for each backend service node within an instance. The throttling thresholds are as follows:
Limit | Serverless instances | Subscription instances | ||||
Shared | Dedicated | Enterprise Edition | Platinum Edition | Professional Edition | ||
Cumulative amount | Reserved + Elastic | Reserved + Elastic | ||||
Throttling threshold | 25,000 TPS | 25,000 TPS | None | 25,000 TPS | None | 25,000 TPS |
Single-API throttling thresholds
Limitations | Limit Management Interface | Serverless instances | Subscription instances | |||
Shared | Dedicated | Enterprise Edition | Platinum Edition | Professional Edition | ||
Reserved + Elastic/Pay-by-traffic | Reserved + Elastic | |||||
Purge queues for a single instance |
| 500 TPS | None | 500 TPS | ||
Create an exchange for a single instance |
| 500 TPS | None | 500 TPS | ||
Delete an exchange for a single instance |
| 500 TPS | None | 500 TPS | ||
Create a queue for a single instance |
| 500 TPS | None | 500 TPS | ||
Delete a queue for a single instance |
| 500 TPS | None | 500 TPS | ||
Create a binding for a single instance |
| 500 TPS | None | 500 TPS | ||
Delete a binding for a single instance |
| 500 TPS | None | 500 TPS | ||
Recover messages for a single instance |
| 500 TPS | None | 500 TPS | ||
Requeue messages for a single instance |
| 20 TPS | None | 20 TPS | ||