You can use the Dispatcher component by itself to balance
the load on servers within a local area network or wide area network,
using a number of weights and measurements that are dynamically set
by Dispatcher.
Dispatcher consists of the following functions:
- The dsserver command handles requests from
the command line to the executor, manager, and advisors.
- The executor command supports port-based load
balancing of TCP and UDP 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 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.
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).
- A sample configuration file is provided to use for configuration
and administration of the Dispatcher machine. After you have installed
the product, find this file in the following directory:
- /opt/ibm/edge/lb/servers/samples
<install_root>ibm\edge\lb\servers\samples
- The SNMP subagent enables an SNMP-based management application
to monitor the status of the Dispatcher.
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.