Hacker News new | ask | show | jobs
by justinsaccount 2947 days ago
This doesn't really replace something like haproxy. In the diagrams, the "real" servers that they are load balancing to are L7 load balancers like HAProxy (using https://github.com/facebook/proxygen most likely)

The problem this solves is is when you are using haproxy but need redundancy or a single server is no longer capable of handling the load and you need to scale out to 2+ servers.

You could run 4 haproxy servers and use round robin DNS to load balance between them, but as they say, this has the problem of:

> compared to DNS it doesn't need to wait for TTL to redirect traffic from failed L7 lb.

Many people likely use anycast/ECMP for this case, but that has the other issue they mention:

> compared to anycast-based solution, L4 lbs are more resilient to the networking related issues (which triggers mass ECMP reshuffle)/ enable better handling of adding/removing of L7 lbs from the pool as well as provide better support for unequal load balancing.

1 comments

Why does nobody in this thread seem to realize that HAProxy works just fine over layer 4?
> The problem this solves is is when you are using haproxy but need redundancy or a single server is no longer capable of handling the load and you need to scale out to 2+ servers.

Please describe how HAProxy running in l4 mode is a solution to this problem.

haproxy terminates tcp session. ipvs/katran does not. the whole purpose of ipvs/katran is to scale out layer of load balancers, which terminates tcp (transport in general) sessions. so tl;dr ipvs/katran solving the problem of scaling out "haproxy/nginx/varnish/w/e else" layer