All Products
Search
Document Center

ApsaraMQ for RocketMQ:Quotas and limits

Last Updated:Jul 09, 2026

ApsaraMQ for RocketMQ imposes limits on resource quotas, instance types, and related parameters. When you use ApsaraMQ for RocketMQ, do not exceed the corresponding limits to prevent application errors.

Parameter limits

The following parameter limits are fixed. Adhere to these specifications to prevent errors from invalid characters or excessive lengths.

Parameter

Value

Description

Instance name

  • Character limit: Supports Chinese characters, letters (a–z, A–Z), digits (0–9), and underscores (_).

  • Length limit: 1 to 128 characters.

None.

Topic name

  • Character limit: Supports letters (a–z, A–Z), digits (0–9), underscores (_), and hyphens (-).

  • Length limit:

    • Serverless instances: 1 to 128 characters.

    • Non-serverless instances: 1 to 60 characters.

Do not use the following reserved characters, prefixes, or suffixes for topic names.

  • Reserved characters

    • TBW102

    • BenchmarkTest

    • SELF_TEST_TOPIC

    • OFFSET_MOVED_EVENT

    • SCHEDULE_TOPIC_XXXX

    • RMQ_SYS_TRANS_HALF_TOPIC

    • RMQ_SYS_TRACE_TOPIC

    • RMQ_SYS_TRANS_OP_HALF_TOPIC

  • Special prefixes

    • rmq_sys_

    • %RETRY%

    • %DLQ%

    • rocketmq-broker-

    • rocketmq-proxy-

  • Special suffixes

    • _REPLY_TOPIC

Use short, common characters for topic names and avoid special characters, which can cause parsing errors. An excessively long name may cause message operations to be rejected.

LiteTopic name

  • Character limit: Supports letters (a–z, A–Z), digits (0–9), underscores (_), and hyphens (-).

  • Length limit: 1 to 64 characters.

Use short, common characters for LiteTopic names and avoid special characters, which can cause parsing errors. An excessively long name may cause message operations to be rejected.

LiteTopic time-to-live (TTL)

  • No default value. This parameter is required.

  • Value range: 30 to 720, or -1. The unit is minutes. The value must be an integer. A value of -1 indicates that the LiteTopic never expires.

If no messages are written to a LiteTopic during the specified TTL period, the LiteTopic expires and is automatically deleted. A value of -1 means the LiteTopic never expires. You can set this parameter only when the message type is Lite.

Consumer group name

  • Character limit: Supports letters (a–z, A–Z), digits (0–9), underscores (_), and hyphens (-).

  • Length limit:

    • Serverless instances: 1 to 128 characters.

    • Non-serverless instances: 1 to 60 characters.

Do not use the following reserved characters or prefixes for consumer group names.

  • Reserved characters

    • DEFAULT_CONSUMER

    • DEFAULT_PRODUCER

    • TOOLS_CONSUMER

    • FILTERSRV_CONSUMER

    • __MONITOR_CONSUMER

    • CLIENT_INNER_PRODUCER

    • SELF_TEST_P_GROUP

    • SELF_TEST_C_GROUP

    • CID_ONS-HTTP-PROXY

    • CID_ONSAPI_PERMISSION

    • CID_ONSAPI_OWNER

    • CID_ONSAPI_PULL

    • CID_RMQ_SYS_TRANS

  • Reserved prefixes

    • CID_RMQ_SYS_

    • CID_HOUSEKEEPING

None.

Instance remarks

  • Character limit: Supports Chinese characters, letters (a–z, A–Z), digits (0–9), and underscores (_).

  • Length limit: 1 to 256 characters.

None.

Topic remarks

Consumer group remarks

ACL Credentials

  • Character limit: The AccessKey ID, AccessKey secret, and Token support only letters (a–z, A–Z) and digits (0–9).

  • Length limit: Up to 1024 characters.

None.

Request timeout

  • Default value: 3000 ms.

  • Value range: This parameter specifies a local client behavior. The value range is not limited.

The request timeout specifies how long the client waits for a synchronous call to complete. Set a value appropriate for your application to avoid prolonged thread blocking.

Message size

Maximum: 4 MB.

This limit applies only to the message body and does not include compression.

You can compress messages and control the payload size to avoid transferring large files. If a message exceeds the size limit, you can split the message or use OSS and transfer the message URL instead.

Custom message properties

  • Character limit: All visible characters.

  • Quantity limit: Maximum of 128 properties per message.

  • Length limit: The total length of the key and value of a property cannot exceed 16 KB.

Do not use the following reserved property keys as custom property keys.

Reserved property keys

  • TRACE_ON

  • MSG_REGION

  • KEYS

  • TAGS

  • DELAY

  • RETRY_TOPIC

  • REAL_TOPIC

  • REAL_QID

  • TRAN_MSG

  • PGROUP

  • MIN_OFFSET

  • MAX_OFFSET

  • BUYER_ID

  • ORIGIN_MESSAGE_ID

  • TRANSFER_FLAG

  • CORRECTION_FLAG

  • MQ2_FLAG

  • RECONSUME_TIME

  • UNIQ_KEY

  • MAX_RECONSUME_TIMES

  • CONSUME_START_TIME

  • POP_CK

  • POP_CK_OFFSET

  • 1ST_POP_TIME

  • TRAN_PREPARED_QUEUE_OFFSET

  • DUP_INFO

  • EXTEND_UNIQ_INFO

  • INSTANCE_ID

  • CORRELATION_ID

  • REPLY_TO_CLIENT

  • TTL

  • ARRIVE_TIME

  • PUSH_REPLY_TIME

  • CLUSTER

  • MSG_TYPE

  • INNER_MULTI_QUEUE_OFFSET

  • _BORNHOST

  • __LITE_TOPIC

None.

MessageGroup

  • Character limit: All visible characters.

  • Length limit: 1 to 64 bytes.

MessageGroup is the group identifier for ordered messages. It is typically set to an identifier for a group of messages that must be processed in order, such as an order ID or a user ID.

Message sending retries

  • Default value: 3.

  • Value range: Unlimited.

The client SDK automatically handles message sending retries based on a built-in policy, which is not visible to your application. Do not set this value too high to avoid blocking business threads.

If a message still fails after the maximum number of retries, you must implement a fallback mechanism in your application to ensure reliability.

Message consumption retries

  • Default value: 16.

  • Maximum: 1,000.

You can set a reasonable value as needed. Avoid using retries to trigger an infinite loop. An excessive number of retries can significantly increase system pressure.

Transaction resolution check interval

  • Default value: 60 seconds.

  • Value range: This value cannot be customized.

This interval determines how often the producer client checks the status of a half-transactional message that was not committed due to an exception or restart.

Avoid setting this interval too short, as frequent checks can degrade system performance.

First check time for half-transactional messages

  • Default value: Same as the transaction resolution check interval.

  • Maximum: 1 hour.

None.

Maximum timeout for half-transactional messages

  • Default value: 4 hours.

  • Value range: This value cannot be customized.

If a half-transactional message is not committed because of a system restart or an exception, the producer client checks its status at the specified transaction resolution check interval. If no result is returned after the maximum timeout period, the half-transactional message is forcibly rolled back.

You can monitor this metric to avoid transaction exceptions.

Maximum delay for scheduled messages

  • Subscription and pay-as-you-go Standard Edition instances, and Serverless Standard and Professional Edition instances support a maximum delay of 7 days.

  • Subscription and pay-as-you-go Professional Edition and Platinum Edition instances support a maximum delay of 40 days.

You can set the delay for scheduled messages to an hour-level interval. Avoid long delays.

PushConsumer consumption timeout

  • Default value: 230 minutes.

  • Value range: This is a system-level configuration and cannot be changed.

The PushConsumer consumption timeout is controlled by the ApsaraMQ for RocketMQ server.

If a consumer does not process a message within this timeout, the system marks the consumption attempt as failed and triggers a retry. This may cause a small number of duplicate messages.

PushConsumer local cache

  • Default values:

    • Maximum number of cached messages: 1,024.

    • Maximum cache size: 64 MB.

  • Value range: You can customize these settings. The values are not limited.

When the consumer type is PushConsumer, the client SDK caches some messages locally to improve consumer throughput and performance. The number and size of cached messages must be within the limits of the system memory.

PushConsumer retry interval

  • Default values:

  • Value range: This value cannot be customized.

None.

PushConsumer consumption concurrency

  • Default value: 20 threads.

  • Value range: You can customize this setting. The value is not limited.

None.

Maximum batch size for message retrieval

  • Default value: 32.

  • Value range: This is a system-level configuration and cannot be changed.

This parameter specifies the maximum number of messages that a consumer can retrieve from the server at a time. You can set a reasonable value as needed. Retrieving too many messages at once can cause many duplicate messages if consumption fails.

SimpleConsumer maximum invisible duration

  • Default value: None. This is a required parameter.

  • Value range: Minimum: 10 seconds. Maximum: 12 hours.

Set this duration to be slightly longer than your expected message processing time, including any potential retry intervals.

Consumer long polling timeout

Value range: Minimum: 5 seconds. Maximum: 20 seconds.

You can customize this value within the specified range.

With long polling, if no messages are available on the server, the client's request is held open until a message arrives or the timeout elapses.

This method reduces empty polling requests and lowers the load on both the client and server, especially when message volume is low.

Subscription

Filter expression length limit: 4,000 characters (including TAG and SQL filters).

For more information about subscriptions, see Subscription.

Resource quotas

ApsaraMQ for RocketMQ limits metrics such as queries per second (QPS) and concurrency to ensure production stability. These quotas are sufficient for most scenarios. If these quotas do not meet your business requirements, contact ApsaraMQ for RocketMQ technical support for assistance.

Limit

Value

Description

Subscription and pay-as-you-go instances

Serverless instances

Number of instances per region

A maximum of 1,000 instances of all types.

None.

Message sending and receiving TPS per instance

Determined by the purchased instance type. For specific limits, see Instance type limits.

Automatic scaling

The message sending and receiving TPS reflects the processing performance of the instance. If the actual TPS exceeds the limit for the instance type, the instance is throttled. Upgrade the instance type promptly.

Message retention period

  • Minimum: 24 hours.

  • Maximum: 720 hours.

  • Minimum: 24 hours.

  • Maximum: 720 hours.

Extend the message retention period as long as your storage costs allow. A longer period allows more time for troubleshooting and message replay.

Number of inflight messages per consumer group

Maximum: 2,500.

Maximum: 2,500.

An excessive number of inflight messages in a consumer group can slow down consumer responses. Monitor this metric and troubleshoot the cause promptly.

Number of LiteTopics that a single consumer can subscribe to

Maximum: 2,000.

Maximum: 2,000.

Subscribing to an excessive number of LiteTopics on a single consumer may degrade client performance. To request an increase to this limit, submit a ticket.

Maximum consumption TPS for each LiteTopic

200

200

You can create hundreds of thousands to millions of LiteTopics under a topic. The total consumption TPS of the topic is not affected.

Limitations

Message Queue for RocketMQ, a fully managed platform as a service (PaaS), restricts certain high-risk operations and features available in the open-source Apache RocketMQ for system stability. If you have specific requirements, contact Message Queue for RocketMQ technical support.

Limitation

Description

Compatibility with Apache RocketMQ Admin tools

Message Queue for RocketMQ does not support the Apache RocketMQ Admin API or command-line interface (CLI) for managing instances, topics, or groups.

If you need to manage resources programmatically, use Alibaba Cloud OpenAPI, which provides multi-language SDKs and CLI support.

Apache RocketMQ Request-Reply messages

Message Queue for RocketMQ does not support sending Apache RocketMQ Request-Reply messages.

Apache RocketMQ Streaming component

Message Queue for RocketMQ does not provide a managed Apache RocketMQ Streaming component. You can deploy this component yourself in an Alibaba Cloud environment or use the Message Queue for RocketMQ data integration feature for lightweight data integration and computing.

Apache RocketMQ MQTT component

Message Queue for RocketMQ does not provide a managed Apache RocketMQ MQTT component. We recommend using the Alibaba Cloud ApsaraMQ for MQTT service, which has more features.

Apache RocketMQ EventBridge component

Message Queue for RocketMQ does not provide a managed Apache RocketMQ EventBridge component. We recommend using the Alibaba Cloud EventBridge service, which has more features.

Apache RocketMQ-Connector component

Message Queue for RocketMQ does not provide a managed Apache RocketMQ-Connector component. You can use the Message Queue for RocketMQ data integration feature for data input and output.

Instance type limits

  • Standard Edition, Single Node Edition, and Professional Edition instances do not support elastic TPS. Plan your resource usage in advance to prevent instance throttling if sudden traffic spikes exceed your specification limits.

  • The topic and group quotas per instance are sufficient for most large-scale production use cases. As a best practice, isolate your business services across different instances based on department or domain. This practice improves stability and resource management.

  • The message TPS specification is based on the total number of normal messages sent and received, using a standard message size of 4 KB as the benchmark. A multiplier applies when you use advanced message features or send large messages. For details on how TPS is calculated, see Calculation specifications.

  • If the actual TPS for message sending and receiving exceeds the upper limit of your purchased instance type:

    • If elastic TPS is enabled, your instance can operate normally as long as the TPS is within the provisioned elastic range. Usage that exceeds the base specification is billed on a pay-as-you-go basis. If the TPS surpasses the maximum elastic capacity, the instance is subject to throttling.

    • For more information about the billing of elastic TPS for non-Serverless instances, see Elastic TPS fees. For more information about the billing of elastic TPS for Serverless instances, see Serverless elastic TPS fees.

    • If your instance does not support elastic TPS or the feature is not enabled, Message Queue for RocketMQ throttles the instance.

    Important

    When throttling is triggered, the server immediately returns a failure response for new send requests. Requests are not queued or buffered — they fail immediately.

    If the client application does not have a retry mechanism configured, any message that receives a throttling failure response is effectively lost. To ensure message reliability, configure a send retry strategy on the client side to handle transient throttling. If you use the ApsaraMQ for RocketMQ SDK, enable the built-in retry policy and set an appropriate maximum retry count.

  • An excessive number of client connections to a Message Queue for RocketMQ instance consumes significant server resources and can severely impact stability. Therefore, ensure the number of client connections does not exceed the limit for your instance type.

Serverless series instances

Instance limits for the Standard and Professional editions.

Instance series

Instance type

Max message TPS

Max connections

Internet traffic

Max topic quota

Max group quota

Standard Edition

rmq.s3.nxlarge

50,000

10,000

Unlimited. Billed based on actual usage.

5,000

5,000

Professional Edition

rmq.p3.nxlarge

50,000

Enables automatic, minute-level elastic scaling for loads over 50,000 TPS.

The upper limit for automatic scaling is 300,000 TPS.

30,000

Unlimited. Billed based on actual usage.

5,000

5,000

Note
  • Number of concurrent online clients: The total number of online producers and consumers. Each is counted as one client.

  • Resource count: The total number of topics and consumer groups.

Deployment architecture

Capacity mode

TPS range

Max concurrent clients

Free client quota

Max resource count

Free resource quota

Max LiteTopics

Shared

Cumulative usage

All

5,000

500

3,000

100

/

Reserved + Elastic

[2,000, 20,000]

5,000

1,000

3,000

200

(20,000, 50,000]

8,000

2,000

3,000

200

(50,000, 100,000]

10,000

3,000

3,000

200

(100,000, 200,000]

20,000

5,000

3,000

200

Dedicated

Reserved + Elastic

5,000

3,000

2,000

3,000

300

300,000

10,000

6,000

4,000

4,000

300

500,000

15,000

8,000

6,000

6,000

500

800,000

[20,000, 50,000]

10,000

8,000

6,000

500

1,200,000

(50,000, 100,000]

20,000

10,000

6,000

500

3,000,000

(100,000, 200,000]

40,000

20,000

8,000

1,000

3,600,000

(200,000, 300,000]

80,000

40,000

10,000

1,500

5,000,000

(300,000, 500,000]

100,000

50,000

16,000

2,000

6,500,000

(500,000, 1,000,000]

200,000

100,000

40,000

3,000

11,600,000

Non-Serverless (subscription and pay-as-you-go) instances

Standard edition

Instance sub-series

Instance type

Max base TPS (ops/sec)

Max burst TPS (ops/sec)

Max connections

Egress bandwidth (Mbps)

Free topic quota

Max topic quota

Max consumer groups

Max LiteTopics

Single Node Edition (No longer sold)

rmq.s1.micro

500

Not applicable

This instance type does not support burst elasticity.

2,000

1 to 1,000

Customizable.

100

100

1,000

/

Cluster High-availability Edition

rmq.s2.2xlarge

2,000

4,000

300

50,000

rmq.s2.4xlarge

4,000

4,000

150,000

rmq.s2.6xlarge

6,000

6,000

500

300,000

Note
  • If the topic and consumer group quotas for the top-tier Standard Edition instance (rmq.s2.6xlarge) are insufficient for your business needs, upgrade to the Professional Edition and select a suitable instance type.

  • Some early Standard Edition instance specifications (for example, rmq-cn-aic46utt204) are no longer available for new purchase. These specifications support only maintenance and renewal of existing instances. If you need to purchase a new instance, select a currently available instance specification.

Professional edition

Instance sub-series

Instance type

Max base TPS (ops/sec)

Max burst TPS (ops/sec)

Max connections

Egress bandwidth (Mbps)

Free topic quota

Max topic quota

Max consumer groups

Max LiteTopics

Single Node Edition (No longer sold)

rmq.p1.micro

500

Not applicable

This instance type does not support burst elasticity.

2,000

1 to 1,000

Customizable.

150

150

1,500

/

Cluster High-availability Edition

rmq.p2.4xlarge

4,000

2,000

4,000

500

2,000

150,000

rmq.p2.6xlarge

6,000

3,000

6,000

300,000

rmq.p2.10xlarge

10,000

5,000

10,000

1,000

500,000

rmq.p2.20xlarge

20,000

10,000

10,000

800,000

rmq.p2.30xlarge

30,000

15,000

12,000

2,000

1,000,000

rmq.p2.40xlarge

40,000

20,000

12,000

1,200,000

rmq.p2.50xlarge

50,000

20,000

14,000

1,400,000

rmq.p2.100xlarge

100,000

30,000

26,000

2,200,000

rmq.p2.120xlarge

120,000

40,000

30,000

2,700,000

rmq.p2.150xlarge

150,000

50,000

38,000

3,300,000

rmq.p2.200xlarge

200,000

60,000

50,000

4,500,000

Note

If the topic and consumer group quotas for Professional Edition instances of rmq.p2.10xlarge or higher are insufficient for your business needs, submit a ticket.

Platinum edition

Instance sub-series

Instance type

Max base TPS (ops/sec)

Max burst TPS (ops/sec)

Max connections

Egress bandwidth (Mbps)

Free topic quota

Max topic quota

Max consumer groups

Max LiteTopics

Cluster High-availability Edition

rmq.u2.10xlarge

10,000

5,000

10,000

1 to 1,000

Customizable.

200

3,000

4,000

600,000

rmq.u2.20xlarge

20,000

10,000

10,000

800,000

rmq.u2.30xlarge

30,000

15,000

12,000

1,000,000

rmq.u2.40xlarge

40,000

20,000

10,000

1,200,000

rmq.u2.50xlarge

50,000

20,000

14,000

1,400,000

rmq.u2.60xlarge

60,000

22,000

16,000

1,600,000

rmq.u2.70xlarge

70,000

24,000

18,000

1,700,000

rmq.u2.80xlarge

80,000

26,000

20,000

1,800,000

rmq.u2.90xlarge

90,000

28,000

24,000

2,000,000

rmq.u2.100xlarge

100,000

30,000

26,000

2,200,000

rmq.u2.120xlarge

120,000

40,000

30,000

2,700,000

rmq.u2.150xlarge

150,000

50,000

38,000

3,300,000

rmq.u2.200xlarge

200,000

60,000

50,000

4,500,000

rmq.u2.250xlarge

250,000

70,000

51,000

5,600,000

rmq.u2.300xlarge

300,000

80,000

52,000

6,300,000

rmq.u2.350xlarge

350,000

90,000

53,000

7,500,000

rmq.u2.400xlarge

400,000

100,000

54,000

9,300,000

rmq.u2.450xlarge

450,000

120,000

60,000

10,400,000

rmq.u2.500xlarge

500,000

140,000

66,000

11,600,000

rmq.u2.550xlarge

550,000

160,000

72,000

12,800,000

rmq.u2.600xlarge

600,000

200,000

80,000

14,000,000

rmq.u2.1000xlarge

1,000,000

300,000

134,000

23,200,000

Note

If the topic and consumer group quotas for Platinum Edition instances are still insufficient for your business needs, submit a ticket.