Entering content frameBackground documentation Server Selection and Load Balancing Using the SAP Web Dispatcher Locate the document in its SAP Library structure

An HTTPS request is assigned to a server in two levels. HTTPS requests are discussed at the end of this documentation.

  1. First, the SAP Web dispatcher decides whether the incoming HTTP request should be forwarded to an ABAP or a J2EE server. It determines a group of servers in the SAP system that could execute the request.
  2. The load is then balanced within this group.

Determining the Server Group

If no J2EE server is active, in the stateless case the request is passed to the next SAP Web AS in the queue according to load balancing. The server group that can process the request is the internal group !ALL of all SAP Web AS in the system. If it is a stateful connection, the system selects the SAP Web AS that is processing the transaction.

If a J2EE server is active, the system looks through the list of ICF prefixes. If the URL starts with a prefix that is in the HTTP service tree, the request is passed to the server group !DIAG. If not, it is passed to the group !J2EE. The groups are described in SAP Web Dispatcher under Functions.

The start page and the root directory are handled in a special way, since when you search through the list of prefixes, you cannot search through the root directory (it would always be found because all URLs begin with /). If the URL is a root URL, the profile parameter is/HTTP/default_root_hdl determines which root directory should be used. Permitted values are abap and j2ee, although the value can also be changed dynamically using Transaction RZ11 or SMMS.

The following flow diagram shows the algorithm that is used.

This graphic is explained in the accompanying text

The decision whether it is a SAP prefix is described in detail below. With URL http://hostname:port/A/B/C the prefix to be examined is the character string /A/B/C.

The SAP Web dispatcher must therefore decide whether it is an SAP prefix, which should be sent to the ABAP server (the ICF), or if it is a prefix that is not recognized by the ICM, in which case it is sent to the J2EE application server. To do this, the following process is used.

This graphic is explained in the accompanying text

Example

If you enter the URL http://saphost:8080/index.html, the prefix to be checked is /index.html. This is not found on the URL mapping table and it contains one oblique. If you now set parameter is/HTTP/default_root_hdl to j2ee (default setting), the system searches the root directory of the SAP J2EE Application Server for file index.html. This is then returned to the client by the ICM of the application server.

Working with Logon Groups in the SAP System

If the request should be sent to an SAP Web AS, then you must check whether a logon group (maintained in Transaction SMLG) has been defined for this URL. The SAP Web dispatcher checks the list of logon groups to see if one has been defined. If it does find one, the load balancing must be executed within this logon group.

Caution

Since with HTTP there are many requests, this logon group must have the attribute "external RFC" so that no one server is flooded with requests.

Load Balancing in the Server Group

Capacity is assigned to every application server. With the SAP Web AS ABAP server, this depends on the number of dialog work processes. With the SAP J2EE application server, the capacity is determined in a similar way. The requests are distributed in turn to the server, depending on its capacity. If Server A has twice as much capacity as Sever B, then A will receive twice as many requests as B.

Server Selection and Load Balancing for HTTPS Requests

Since with HTTPS requests the SAP Web dispatcher is unable to read the URL, it can only distribute HTTPS requests in turn to the HTTPS-enabled servers in the system. This also takes into consideration the capacity of each server. To be able to process J2EE requests, each HTTPS-enabled server must have integrated the J2EE server.

The ICM of the server that receives the HTTPS request can encode the URL and then decide whether the request should be sent to the ICF or to the integrated J2EE server.

See also:

SAP Web Dispatcher and SSL

 

 

 

 

 

 

Leaving content frame