Right now we have two structures governing load balancing, one to choose the algorithm (RoundRobin, Random, LeastConnections, PowerOfTwo), and one to define load balancing parameters (only the weight for now, and it is not even used).
Here's what I want to change:
algorithms: round robin, random, least loaded, power of two, sticky session
weight parameter can be used by all algorithms
load measurement parameter is how we measure the load of a server. An enum of: least connections, least active requests, latency EWMA, peak EWMA (latency wighted by the number of active requests)
Right now we have two structures governing load balancing, one to choose the algorithm (RoundRobin, Random, LeastConnections, PowerOfTwo), and one to define load balancing parameters (only the weight for now, and it is not even used).
Here's what I want to change: