In general there are a small number of components in any load-balancing
implementation, and these common elements are illustrated in
figure #figloadbal#2834>.
#figure2835#
Figure: Block structure of a load balancer
- The information gathering component
- This exchanges information about
processor load and communications patterns of entities with other information
gathering components.
- The transfer component
- This decides <#2843#> which<#2843#>, if any, of the
processes on this node are eligible to run remotely.
- The location component
- This decides <#2844#> where<#2844#> the eligible processes
should run.
- The negotiation component
- The negotiation component negotiates with
negotiation components in other load balancers either to try to have processes
executed elsewhere or to indicate that capacity is available on this node. It
indicates to the migration manager which processes are to be moved.