[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: server unavailable in proxy backends

Nominally, I'd want to see some sort of circular linked list. If (really,
I should say 'when' since this is on the whiteboard for next year or two,
but...if) I had back-ldap fronting to a bunch of redundant URIs, what I'd
essentially have is

uri "ldap://data-center ldap://backup-center ldap://offsite";

where capacity(data-center) > capacity(backup-center) > capacity(offsite).

Ideally, it would retry all of those in a circle: data-center if possible,
else backup, else offsite...else....sit on hands for $AWHILE, retry to
data-center. HOWEVER...iff I am using backup-center or offsite, I'd ALSO
want every $AWHILE(2?) to try to reconnect to the head of the list, i.e.
data-center. The idea is pretty simple: always use the best server I can
get access to. The closest analogy that comes to mind is MX records
priority values, although that doesn't have to deal with long persistent
connections, which I also find desirable. (It'd be best if this could be
parallelized, so the attempt to try better servers doesn't interfere with
the "hot" connections to the backup servers until the better servers are
alive again? Yes, this will probably involve more mutexing and a bit of
logic, but even small parts of this big idea would be nice resiliency

Hope that makes sense, and maybe puts a motivating problem behind the