Topics

Directives

Bugfix checklist

See also

Enabled via lbmethod=byrequests, the idea behind this
scheduler is that we distribute the requests among the
various workers to ensure that each gets their configured share
of the number of requests. It works as follows:

lbfactor is how much we expect this worker
to work, or the workers' work quota. This is
a normalized value representing their "share" of the amount of
work to be done.

lbstatus is how urgent this worker has to work
to fulfill its quota of work.

The worker is a member of the load balancer,
usually a remote host serving one of the supported protocols.

We distribute each worker's work quota to the worker, and then look
which of them needs to work most urgently (biggest lbstatus). This
worker is then selected for work, and its lbstatus reduced by the
total work quota we distributed to all workers. Thus the sum of all
lbstatus does not change(*) and we distribute the requests
as desired.

If some workers are disabled, the others will
still be scheduled correctly.

Notice:This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.