Skip to content
Discussion options

You must be logged in to vote

Implementing this is indeed very complex and not something we get a lot of requests for. There is a good argument to try to keep queue implementations (we now have 2 or 3 independent implementations depending on how you count) as simple as possible.

As you observed if at the time the of the reject there are no additional consumers with capacity (unmet prefetch) it will be re-delivered back to the original consumer.

The only alternative I can think of is that if the consuming app detects it has insufficient resources available to process it can unsubscribe or shut down it's channel and enter a polling loop to detect when the resource is available again and resubscribe at that point.

Replies: 3 comments 1 reply

Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
1 reply
@lukebakken
Comment options

Answer selected by mlichtblau
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Ideas
4 participants
Converted from issue

This discussion was converted from issue #9911 on November 13, 2023 15:48.