If you have heartbeats enabled and you do some long running task e.g:
- Get Message
- Do some long task (e.g long running SQL query, slow HTTP requests, etc.)
- Attempt to ack message
You get various errors relating to the AMQP connection e.g Library error: a socket error occurred because the AMQP server has closed the connection as the client did not send heartbeats. This also causes the message to be re-delivered to another consumer despite the current consumer still working on the request.
Is there some way to continue to send heartbeats? We have a load balancer in between the clients and RabbitMQ so we need the heartbeats and the timeout is already set at the maximum allowed to prevent the load balancer from terminating the idle connection.
If you have heartbeats enabled and you do some long running task e.g:
You get various errors relating to the AMQP connection e.g Library error: a socket error occurred because the AMQP server has closed the connection as the client did not send heartbeats. This also causes the message to be re-delivered to another consumer despite the current consumer still working on the request.
Is there some way to continue to send heartbeats? We have a load balancer in between the clients and RabbitMQ so we need the heartbeats and the timeout is already set at the maximum allowed to prevent the load balancer from terminating the idle connection.