Before Creating the Enhancement Request
Summary
In the current implementation, if there is a backlog of messages after popRequest done, PopMessageProcessor will try to wake up waiting PopRequests to optimize consumption delay.
But in scenarios where immediate message retrieval is highly unlikely, such wake-ups may result in a large amount of unnecessary polling. eg:
- Pop queue operations are being throttled due to too many in-flight messages.
- Pop queue operations experience heavy lock contention.
Motivation
We observed that the number of PopRequests processed per second exceeded 30w, placing heavy load on the CPU.
Describe the Solution You'd Like
In scenarios where immediate message retrieval is highly unlikely, avoid waking up PopRequests.
Describe Alternatives You've Considered
/
Additional Context
No response