How to dynamically extend the holding time of a message for the message consumer in RabbitMQ? - Stack Overflow

admin2025-04-17  2

Simply put, I want to implement the same function of ServiceBusReceiver.RenewMessageLockAsync of Azure Service Bus queue in RabbitMQ. This function lets the message consumer "extend" the "holding" time of a message that has been received by the consumer. By saying "holding" time, I mean the timeout after which a message will be requeued, or made visible again, in a queue by the message broker. I know I can set a timeout to a queue in RabbitMQ, so that a message that is not acknowledged by a consumer within that time will be visible in the queue again. But I want to dynamically extend the time that a message can be held by a consumer. This is critical to process a task whose cost in time is not predictable: it may be seconds, hours or even days. So it doesn't look good to set a very long time out for all the tasks (messages). Could anyone help please?

If that's not possible in RabbitMQ, are there any open source message brokers that can do it?

转载请注明原文地址:http://anycun.com/QandA/1744832666a88245.html