Keepalive / heartbeat like feature for rabbitmq ack

Viewed 119

RabbitMq has a delivery ack timeout that automatically closes a connection and requeues a message. I have a long running process on one of my queues that's exceeding the timeout before it's finished causing the message to requeue and another consumer starts doing the same work a second time. Is there a way I can notify RabbitMq that my consumer is still alive and working without ACKing the message? To be clear - I want the ACK timeout to still apply if I fail to notify RabbitMq my task is still in process.

I know there's a heartbeat to detect dead TCP connections, but that doesn't seem to apply here. My connection is running fine the entire time - the task just isn't finished when the timeout expires!

0 Answers
Related