apache / rocketmq

Apache RocketMQ is a cloud native messaging and streaming platform, making it simple to build event-driven applications.
https://rocketmq.apache.org/
Apache License 2.0
21.3k stars 11.71k forks source link

[Feature] Notify pop request before calculate consumer lag #8947

Closed lizhimins closed 1 week ago

lizhimins commented 1 week ago

Is Your Feature Request Related to a Problem?

当 RocketMQ 的 Pop 消费模式引入了按需唤醒的特性(#8269,#8592)后,消费延迟滞后时间最大会达到一个长轮询的时间间隔,实际上消费过程是没有延迟的。为了更准确地反映这一情况,系统在计算消息堆积量之前会先执行一次长轮询以唤醒消费者。这一特性依赖于两个条件:1. 每写入一定数量的消息时触发唤醒;2. 在输出指标之前执行唤醒逻辑。

When the wake-up feature was introduced in RocketMQ's Pop consumption mode (issues #8269, #8592), the maximum backlog of messages is equivalent to the duration of one long poll, meaning that the actual consumption process is delay-free. To more accurately reflect this situation, the system now performs a long poll to wake up the consumer before calculating the message lag. This feature relies on two conditions: 1. Triggering a wake-up after a certain number of messages are written; 2. Executing the wake-up logic before outputting the metrics.

Describe the Solution You'd Like

Impl this feature

Describe Alternatives You've Considered

This feature relies on two conditions: 1. Triggering a wake-up after a certain number of messages are written; 2. Executing the wake-up logic before outputting the metrics.

Additional Context

No