Correct me if I'm wrong, but a backend is always considered alive if the
port is up (accepting connections)?
Now, in our setup we have backends that always accepts connections (or, at
least, the maximum queue size is too big), so if the backend is overloaded,
one can connect, but can wait several minutes before getting a reply on a
trivial request. In such a case, for all practical purposes, the backend is
dead.
From time to time, we are experiencing some users reporting "the site is
dead", while others are experiencing "the site works fine", so it really
seems like a real problem that the "dead" backend is marked as "live" in
pound.
I see there is a generic bio_callback function dealing with timeouts - but
as far as I can tell from a quick glance, it will only close the connection
and never mark a timed out backend as dead. Would it be possible and
desirable to implement such a feature?
[...]
|