]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: peers: Add a message for heartbeat.
authorFrédéric Lécaille <flecaille@haproxy.com>
Mon, 11 Feb 2019 16:49:39 +0000 (17:49 +0100)
committerWilly Tarreau <w@1wt.eu>
Fri, 1 Mar 2019 08:33:26 +0000 (09:33 +0100)
commit645635da847b027d5f651b99c31d3ae006c73f19
treea53ebc5efbb4f05da4b632222bffb8ad23cd0eda
parentc8d5b95e6da3f6cc7f8fb725292dacc477afdb8c
MINOR: peers: Add a message for heartbeat.

This patch implements peer heartbeat feature to prevent any haproxy peer
from reconnecting too often, consuming sockets for nothing.

To do so, we add PEER_MSG_CTRL_HEARTBEAT new message to PEER_MSG_CLASS_CONTROL peers
control class of messages. A ->heartbeat field is added to peer structs
to store the heatbeat timeout value which is handled by the same function as for ->reconnect
to control the session timeouts. A 2-bytes heartbeat message is sent every 3s when
no updates have to be sent. This way, the peer which receives such a message is sure
the remote peer is still alive. So, it resets the ->reconnect peer session
timeout to its initial value (5s). This prevents any reconnection to an
already connected alive peer.
include/types/peers.h
src/peers.c