yyyar / gobetween

:cloud: Modern & minimalistic load balancer for the Сloud era
http://gobetween.io
Other
1.91k stars 210 forks source link

Add etcd, patroni and http health check support #310

Closed pashagolub closed 1 year ago

pashagolub commented 3 years ago

This PR adds support for etcd and based on it support for patroni.

The code is working well for one of our prominent clients. We assume it as bulletproof. However, we're happy to improve it in case of need.

Resolves #233

illarion commented 3 years ago

@pashagolub This PR looks like a solid improvement we would like to have in Gobetween. It's really nice to know that it's used by your clients in production. But it looks like a good candidate to split it to several PR's:

  1. Etcd discovery
  2. HTTP healthcheck
  3. Close connection on failure & wait for succesfull healthcheck.

If you could split it this way we would be very thankful

In any case, it seems that patroni support is out of the gobetween project scope, since it's something limited to only one use case and could be replaced by generic etcd support (please correct me if I'm wrong)

Thank you!

pashagolub commented 3 years ago

@ants 🛎️