mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-14 07:24:32 +00:00
2069704492
Since the introduction of server weights, all load balancing algorithms relied on a pre-computed map. Incidently, quite a bunch of map-specific parameters were used at random places in order to get the number of servers or their total weight. It was not architecturally acceptable that optimizations for the map computation had impact on external parts. For instance, during this cleanup it was found that a backend weight was seen as 1 when only the first backup server is used, whatever its weight. This cleanup consists in differentiating between LB-generic parameters, such as total weights, number of servers, etc... and map-specific ones. The struct proxy has been enhanced in order to make it easier to later support other algorithms. The recount_servers() function now also updates generic values such as total weights so that it's not needed anymore to call recalc_server_map() when weights are needed. This permitted to simplify some code which does not need to know about map internals anymore. |
||
---|---|---|
.. | ||
common | ||
import | ||
proto | ||
types |