The native rabbitmq client for java allows to setup heartbeat on connection settings, for example like this:
import com.rabbitmq.client.ConnectionFactory;
...
ConnectionFactory connectionFactory = new ConnectionFactory();
connectionFactory.setAutomaticRecoveryEnabled(true);
connectionFactory.setHost("some://host");
connectionFactory.setConnectionTimeout(5000);
connectionFactory.setRequestedHeartbeat(5); // keeps an idle connection alive
What is the rabbitmq client doing with the heartbeat settings? Is it sending a stubbed message to special exchange/queue or what does it else?
Can somebody explain it in details?