Routing algorithm

While the weighted round robin algorithm described in Chapter 5, Plug-in workload management and failover is the main routing algorithm, there are situations that will override how the request is routed. These situations are described in the next sections.

 

In-process

If a client request is to an object that is already in the same process as the client, the request will automatically be routed to the in-process object. In this case, no weights are decremented. The in-process optimization overrides all other selection criteria.

 

Prefer local

"Prefer local" is an additional attribute that can be selected on a given server cluster. This attribute will instruct the selection logic to keep all client requests local to the same node as the client if possible. Thus, if the Prefer local setting is enabled, and a request from a client can be serviced by an appserver that is local to the same machine as the client, the request will be routed to that local server. Prefer local still decrements the weight for each request, and if multiple application servers (cluster members) are local to the client, the standard weighted round robin algorithm will be used to route requests between all of the local servers. The "weight set" will be refreshed when all local weights reach zero.

 

Affinity

It is possible to establish an affinity between a client and an appserver such that all client requests are sent to the same application server for the life of the affinity. Examples: Transactional (strong) affinity: The first request after the transaction begins will determine to which appserver the requests will be routed. All subsequent requests from this client will be routed to the selected application server until the end of the transaction. Applied (weak) affinity: The first time a cluster unaware client needs to use an object, the ORB (via an indirect IOR) will route the request to the LSD. The LSD will return the appserver (via a direct IOR) to route the request to. All subsequent requests from this client for that object will be routed to the selected application server.

Thus, the standard weighted round robin algorithm can be overridden by various affinities. In affinity situations, the server weight value is still decremented for each request (starting with WebSphere V5.1), as discussed in 5.4.4, Plug-in workload management and failover policies. However, requests with affinity continue to be sent to the associated appserver even when the weight value reaches zero.

  Prev | Home | Next

 

WebSphere is a trademark of the IBM Corporation in the United States, other countries, or both.

 

IBM is a trademark of the IBM Corporation in the United States, other countries, or both.