
SAP Web Dispatcher
Uses
The SAP Web Dispatcher is used as a "software Web switch" between the Internet and your SAP system, which consists of one or more Web Application Servers. You therefore have only one point of access for HTTP(S) requests in your system. Furthermore, the SAP Web dispatcher balances the load, so that the request is always sent to the server with the greatest capacity.
Introductory Comments
The SAP Web dispatcher is recommended for when you use an SAP system with several SAP Web Application Servers for Web applications.
The SAP Web dispatcher is a program that you can run on the machine that is connected directly to the Internet. It is very easy to configure. The SAP Web dispatcher’s profile file only needs to know the port on which it should accept HTTP(S) requests (parameter
icm/server_port_<xx>), where it can find the SAP message server (parameter rdisp/mshost) and on which port it accepts these HTTP requests (parameter ms/http_port).If you should be able to call the Web application externally, for example using the URL
www.shop.acme.com, this host name must be mapped internally to the SAP Web Dispatcher. This then forwards the HTTP(S) request to a suitable SAP Web AS.The prerequisites for operating the SAP Web Dispatcher are described in
Operating the SAP Web Dispatcher. SAP Web Dispatcher describes the SAP Web dispatcher’s profile parameter. The settings should be suitable for normal operation. You can also find the parameters in Transaction RZ11. You can find an example of the SAP Web dispatcher’s profile file in Example: Profile File of a SAP Web Dispatcher.Integration
The SAP Web dispatcher is located between the Web client (browser) and your SAP system that is running the Web application.

It forwards the incoming requests (HTTP, HTTPS) around to the SAP Web AS of the SAP system. The number of requests that are sent to a Web AS depends on its capacity, which is linked to the number of dialog work processes that are configured. If the application is stateful, the SAP Web dispatcher ensures that with the next request, the user is forwarded to the server that is processing his or her application. To do this, it uses the session cookie with HTTP connections, and the client IP address with HTTPS connections (with SSL) (see also
SAP Web Dispatcher and SSL).The procedure for this is described in detail in
Server Selection and Load Balancing Using the SAP Web Dispatcher.Furthermore, the SAP Web dispatcher decides whether the incoming request should be forwarded to an ABAP or J2EE server. For more information, see
Integration of the SAP J2EE Application Server.
Unlike
Functions
The SAP Web dispatcher keeps information about the SAP system that it needs for load distribution in the following tables:
|
Table |
Information |
Source of Information |
|
|
Server Table |
All SAP Web Application Servers that process the HTTP(S) requests. |
Message server of the SAP system with the server list. |
|
|
Group Table |
Groups of these servers. Here there are known groups that are maintained in the system, as well as the following internal groups: |
You maintain logon groups in Transaction SMLG in the system. The SAP Web dispatcher can get the information from any SAP Web AS. |
|
|
!ALL |
Group of all connected application servers. |
||
|
!J2EE |
Group of J2EE servers. |
||
|
!DIAG |
Group of ABAP servers that provide the dialog work processes. |
||
|
URL Mapping Table |
Mapping of the path part that is specified in the browser to the information about the server (groups).
You can determine, for example, that all requests that contain the path prefix /sap/bc are only processed by the servers that process logon group GROUP_1. |
You maintain the URL path in Transaction SICF as a service in the HTTP service tree. |
|
The SAP Web Dispatcher Profile Parameter
SAP Web Dispatcher describes the profile parameter for configuring the SAP Web dispatcher.
When you set the maximum values, note that unnecessarily large values can increase the SAP Web dispatcher’s memory consumption.

You can find an example of a SAP Web dispatcher’s profile file in
Starting and Stopping the SAP Web Dispatcher
Operating the SAP Web Dispatcher describes how you start and stop the SAP Web dispatcher.Tracing the SAP Web Dispatcher
The SAP Web dispatcher’s trace file is called
dev_webdisp and is located in the work directory. If you want to change the trace level, you must first determine the SAP Web dispatcher’s PID. You can then use command kill -USR1 <WebDisp PID> to increase the trace level by one, or kill -USR2 <pid> to reduce it. By default, the trace level is set to 1.Rule of Thumb for the SAP Web Dispatcher’s Memory Requirement
Of course, the SAP Web dispatcher must reserve as much memory as possible to store large tables.
A rough estimation for memory requirement provides the following formula:
Memory requirement = (S × NS + G × NG + U × NU) × 2 Bytes
where the letters have the following meaning:
|
Variable |
Parameter value |
|
S |
wdisp/max_servers |
|
NS |
wdisp/max_server_name_len |
|
G |
wdisp/max_server_groups |
|
NG |
wdisp/max_server_group_name_len |
|
U |
wdisp/max_url_map_entries |
|
NU |
wdisp/max_url_map_path_len |
Additional SAP Web dispatchers are described in the following sections:
Restrictions
The SAP Web dispatcher is only useful in the Web environment. In the classic SAP system, load is balanced by the message server.
The SAP Web dispatcher forwards only incoming HTTP(S) requests to the Web application server and the response is then returned to the client.
Outgoing requests (such as requests to a different SAP Web Application Server) are not sent via the SAP Web dispatcher, but via the proxy that uses the appropriate intranet.

When you use HTTPS, the SAP Web dispatcher cannot read the request data as this is encoded. It forwards the complete request to an application server that is HTTPS-enabled.