The primary functions of Load Balancer interact with each other
and your server configuration to balance network traffic in your environment.
Dispatcher consists of the following functions:
- dsserver handles requests from the command line to the executor,
manager, and advisors.
- The executor supports port-based load balancing of TCP connections.
It is able to forward connections to servers based on the type of request
received (for example, HTTP, FTP, SSL, and so forth). The executor always
runs when the Dispatcher component is being used for load balancing.
- The manager sets weights used by the executor based on:
- Internal counters in the executor
- Feedback from the servers provided by the advisors
- Feedback from a system-monitoring program, such as Metric Server or WLM.
Using the manager is optional. However, if the manager is not used, load balancing
is performed using weighted round-robin scheduling based on the current server
weights, and advisors are not available.
- The advisors query the servers and analyze results by protocol
before calling the manager to set weights as appropriate. Currently there
are advisors available for the following protocols: HTTP, FTP, SSL, SMTP,
NNTP, IMAP, POP3, SIP, and Telnet. Dispatcher also offers advisors that do
not exchange protocol-specific information, such as the DB2 advisor that reports
on the health of DB2 servers and the ping advisor that reports whether the
server responds to a ping. For a complete list of advisors, see List of advisors.
You also have the option of writing your own advisors (see Creating a custom advisor).
Using the advisors is optional but recommended.
- To configure and manage the executor, advisors, and manager, use the command
line (dscontrol) or the graphical user interface (lbadmin).
The three key functions of Dispatcher (executor, manager, and advisors)
interact to balance and dispatch the incoming requests between servers. Along
with load balancing requests, the executor monitors the number of new connections,
active connections, and connections in a finished state. The executor also
does garbage collection of completed or reset connections and supplies this
information to the manager.
The manager collects information from the executor, the advisors, and a
system-monitoring program, such as Metric Server. Based on the information
the manager receives, it adjusts how the server machines are weighted on each
port and gives the executor the new weighting for use in its balancing of
new connections.
The advisors monitor each server on the assigned port to determine the
server’s response time and availability and then give this information to
the manager. The advisors also monitor whether a server is up or down. Without
the manager and the advisors, the executor does round-robin scheduling based
on the current server weights.