haproxy/include/proto
Willy Tarreau b625a085d8 [MAJOR] implement the Fast Weighted Round Robin (FWRR) algo
This round robin algorithm was written from trees, so that we
do not have to recompute any table when changing server weights.
This solution allows on-the-fly weight adjustments with immediate
effect on the load distribution.

There is still a limitation due to 32-bit computations, to about
2000 servers at full scale (weight 255), or more servers with
lower weights. Basically, sum(srv.weight)*4096 must be below 2^31.

Test configurations and an example program used to develop the
tree will be added next.

Many changes have been brought to the weights computations and
variables in order to accomodate for the possiblity of a server to
be running but disabled from load balancing due to a null weight.
2007-11-28 14:23:17 +01:00
..
acl.h [MEDIUM] acl: added the TRUE and FALSE ACLs. 2007-06-17 20:40:25 +02:00
backend.h [MAJOR] implement the Fast Weighted Round Robin (FWRR) algo 2007-11-28 14:23:17 +01:00
buffers.h [BUG] do not re-arm read timeout after writing data 2007-06-03 16:03:49 +02:00
checks.h [MEDIUM] Spread health checks even more 2007-10-15 09:33:10 +02:00
client.h [MEDIUM] store the original destination address in the session 2007-05-08 23:24:20 +02:00
cttproxy.h [MEDIUM] check for cttproxy support when required 2007-03-24 17:24:39 +01:00
dumpstats.h [MEDIUM] introduce the "stats" keyword in global section 2007-10-18 14:16:11 +02:00
fd.h [MAJOR] auto-registering of pollers at load time 2007-04-16 00:25:25 +02:00
hdr_idx.h [MAJOR] huge rework of the HTTP request FSM 2007-01-21 19:16:41 +01:00
httperr.h [MEDIUM] errorloc now checked first from backend then from frontend 2006-12-24 17:47:20 +01:00
log.h [MAJOR] ported requri to use mempools v2 2007-05-13 21:36:56 +02:00
proto_http.h [MAJOR] replaced all timeouts with struct timeval 2007-05-12 22:35:00 +02:00
proto_tcp.h [MAJOR] create proto_tcp and move initialization of proxy listeners 2007-11-04 22:42:49 +01:00
proto_uxst.h [MINOR] add a generic delete_listener() primitive 2007-11-04 22:42:49 +01:00
protocols.h [MINOR] add a generic unbind_all_listeners() primitive 2007-11-04 22:42:49 +01:00
proxy.h [MINOR] adjust error messages about conflicting proxies 2007-11-04 08:14:25 +01:00
queue.h [MAJOR] ported pendconn to mempools v2 2007-05-13 20:19:55 +02:00
senddata.h [MEDIUM] moved stats and buffer generic functions to new files 2007-10-18 14:12:21 +02:00
server.h [MEDIUM] stats: report server and backend cumulated downtime 2007-10-22 21:36:23 +02:00
session.h [MEDIUM] continous statistics 2007-11-26 20:21:47 +01:00
stream_sock.h [MEDIUM] got rid of event_{cli,srv}_write() in favor of stream_sock_write() 2006-07-29 19:01:31 +02:00
task.h [MAJOR] migrated task, tree64 and session to pool2 2007-05-13 19:43:47 +02:00
template.h [CLEANUP] included common/version.h everywhere 2006-06-29 18:54:54 +02:00