tencent cloud

TDMQ for RocketMQ

Release Notes and Announcements
Release Notes
Announcements
Product Introduction
Introduction and Selection of the TDMQ Product Series
What Is TDMQ for RocketMQ
Strengths
Scenarios
Product Series
Comparison with Open-Source RocketMQ
High Availability
Quotas and Limits
Supported Regions
Basic Concepts
Billing
Billing Overview
Pricing
Billing Examples
Pay-as-you-go Switch to Monthly Subscription (5.x)
Renewal
Viewing Consumption Details
Refund
Overdue Payments
Getting Started
Getting Started Guide
Preparations
Step 1: Creating TDMQ for RocketMQ Resources
Step 2: Using the SDK to Send and Receive Messages (Recommended)
Step 2: Running the TDMQ for RocketMQ Client (Optional)
Step 3: Querying Messages
Step 4: Deleting Resources
User Guide
Usage Process Guide
Configuring Account Permissions
Creating the Cluster
Configuring the Namespace
Configuring the Topic
Configuring the Group
Connecting to the Cluster
Managing Messages
Managing the Cluster
Viewing Monitoring Data and Configuring Alarms
Cross-Cluster Message Replication
Use Cases
Naming Conventions for Common Concepts of TDMQ for RocketMQ
RocketMQ Client Use Cases
RocketMQ Performance Load Testing and Capacity Assessment
Access over HTTP
Client Risk Descriptions and Update Guide
Migration Guide for TencentCloud API Operations Related to RocketMQ 4.x Cluster Roles
Migration Guide
Disruptive Migration
Seamless Migration
Developer Guide
Message Types
Message Filtering
Message Retries
POP Consumption Mode (5.x)
Clustering Consumption and Broadcasting Consumption
Subscription Relationship Consistency
Traffic Throttling
​​API Reference(5.x)
History
API Category
Making API Requests
Topic APIs
Consumer Group APIs
Message APIs
Role Authentication APIs
Hitless Migration APIs
Cloud Migration APIs
Cluster APIs
Data Types
Error Codes
​​API Reference(4.x)
SDK Reference
SDK Overview
5.x SDK
4.x SDK
Security and Compliance
Permission Management
CloudAudit
Deletion Protection
FAQs
4.x Instance FAQs
Agreements
TDMQ for RocketMQ Service Level Agreement
Contact Us
DocumentationTDMQ for RocketMQFAQs4.x Instance FAQsIntroduction to Message Pulling Frequency

Introduction to Message Pulling Frequency

PDF
Focus Mode
Font Size
Last updated: 2026-01-23 17:52:25
RocketMQ provides two common consumption modes, Pull and Push. The implementation of the Push mode is based on the Pull mode, only that it is a packaging of the Pull mode. Therefore, the RocketMQ Push mode is not a true Push mode, but still a Pull mode.
It can be assumed that RocketMQ SDK will continuously perform message pulling tasks. For each pull:
After a message is pulled from the broker, if it is filtered out (for example, due to tag-based filtering), the pull request is re-queued into a blocking queue, and the message pull cycle continues. If the message is not filtered, it is passed to the consumer thread for processing, while the pull request is still re-queued into the blocking queue.
If no new messages are available from the broker or no messages are matched, the pull request is re-queued into the blocking queue, and the message pull cycle continues.
From here, we can see that if the user does not produce any message, as long as there is a consumer online, it will periodically request the server, which can also ensure the timeliness of message consumption. If the user wants to reduce the number of pulls,

Solutions

For consumers using the pull mode, since users have full control over the pull frequency, they should implement appropriate waiting mechanisms after each pull or use rate-limiting components to regulate the pull rate effectively.
For consumers in push mode, the PullInterval parameter can be adjusted to increase the interval between pull operations.
 // Set pull interval to 60 seconds.
pushConsumer.setPullInterval(60 * 1000);
Note:
It is important to note that increasing the pull interval may lead to higher message consumption latency. Any modifications should be made with caution.
If the message production rate is low, message pulls will typically align with the long polling timeout. Currently, the SDK enforces a fixed long polling interval of 15 seconds. This means that for a single queue on a single broker, there will be at least 4 pull requests per minute. For example, with 10 Topics, each having 3 queues, and 2 brokers, the total number of pull requests would be 10*3*2*4=240, meaning 4 pull requests per second.
During operation, as messages are produced and consumed, retry topics may be generated. This requires additional pull requests for the retry queues, further increasing the overall pull frequency.

Help and Support

Was this page helpful?

Help us improve! Rate your documentation experience in 5 mins.

Feedback