SAP Web Dispatcher Threads Test

The SAP Web dispatcher performs load balancing, and passes requests to Internet Communication Managers (ICMs) on the connected application servers rather than to work processes. Besides the pool of worker threads, which process incoming requests, the following ICM components are also implemented as threads:

  • Thread Control: This thread accepts the incoming TCP/IP requests and creates (or wakes) a worker thread from the thread pool to process the request. From this point on, thread control initializes the connection info data.
  • Worker Threads: These threads handle connection requests and responses. A worker thread contains an I/O handler for the network input and output, diverse plug-ins for the various supported protocols (HTTP, SMTP,…), which are required to be able to decide when the sent packet is finished (depends on the protocol).
  • Watchdog: Usually, a worker thread waits for the response, regardless of whether the worker thread is a server or a client. If a timeout occurs, the watchdog takes on the task of waiting for the response. This makes the worker thread available for other requests. When the watchdog receives the response, it informs the thread control components, which then call a worker thread.
  • Signal Handler: This thread processes signals sent from the operating system or from another process (for example, the dispatcher).
  • Connection Info: This table contains information about the state of the connection, the memory pipes, and the plug-in data for every existing network connection.
  • Memory Pipes: These memory-based communication objects are used to transfer data between the ICM and work processes (AS ABAP), or between the ICM and Java server processes (AS Java). There are four pipes for every connection: One data pipe per request and response and one out-of-band (OOP) pipe. The OOB pipe is used for control data.
  • Internet Server Cache: The ICM contains another cache to enable a quick response to repeated requests. This cache is not shown in the graphic.

For each thread of the target SAP Web Dispatcher, this test reports the current state and the rate at which requests are processed by the threads.

Target of the test : A SAP Web Dispatcher

Agent deploying the test : An internal/remote agent

Outputs of the test : One set of results for each thread of the SAP Web Dispatcher being monitored.

Configurable parameters for the test
Parameter Description

Test period

How often should the test be executed

Host

Specify the host for which the test is to be configured.

Port

The port number at which the specified host listens. The default is 2375.

Data Collection Mode

By default, this flag is set to Sapcontrol indicating that the eG agent connects to the target SAP Web Dispatcher and collects the required metrics using the SAPControl web service. However, if you wish to collect the required metrics using the Command line program, then, you can set this flag to CLI.

WSDL Port

This parameter appears only if the Data Collection Mode flag is set to Sapcontrol – i.e., if the test uses the SAPControl web service to collect measures. In this text box, specify the port number of the SAPControl web service. To determine the exact port number of the SAPControl web service, you can look up the etc/services file on the SAP Web Dispatcher being monitored. If the port number is not declared in the etc/services file, you can specify the default port number of the web service against WSDL Port If the web service is not SSL-enabled, then the default port number of the web service will be: 5<NR>13. Similarly, if the web service is SSL-enabled, then the default port number of the web service will be: 5<NR>14. <NR> in the port number refers to the system number of the SAP server being monitored. The system number is an indicator of the TCP/IP port at which the SAP Web Dispatcher server listens. For example, for a server that listens at port 3200, the system number will be ‘00’. Similarly, if the SAP server port is 3201, the system number will have to be specified as ‘01’. Accordingly, the default port number of an SSL-enabled SAPControl web service will be 50014 , if the system number is 00, or 50114, if the system number is 01.

SSL

This parameter appears only if the Data Collection Mode flag is set to Sapcontrol – i.e., if the test uses the SAPControl web service to collect measures. Set this flag to Yes, if the SAPControl web service is SSL-enabled. Set this flag to No, if the SAPControl web service is not SSL-enabled.

OS Username, OS Password and Confirm Password

This parameter appears only if the Data Collection Mode flag is set to Sapcontrol – i.e., if the test uses the SAPControl web service to collect measures. To enable the test to access the SAPControl web service and collect the required metrics, you need to configure the OS Username and OS Password parameters of the test with the credentials (i.e., name and password) of an OS user, who fulfills one of the following conditions:

  • The name of the OS user should be declared using the service\admin_users profile parameter; (OR)
  • The name of the user group to which the OS user belongs should be declared using the service\admin_groups profile parameter; (OR)
  • The OS user should have the permission to execute the sapstartsrv executable

Confirm the OS Password by retyping it in the Confirm Password text box.

WEB Dispatcher DIR

This parameter appears only if the Data Collection Mode flag is set to CLI – i.e., if the test uses the command line program to collect measures. Specify the full path to the directory where the target SAP Web Dispatcher is installed.  Ensure that the location specified contains the sapwebdisp and wdispmon executables.

Profile File

This parameter appears only if the Data Collection Mode flag is set to CLI – i.e., if the test uses the command line program to collect measures. Specify the full path to the profile file with which the target SAP Web Dispatcher was started. The default name of the profile is sapwebdisp.pfl.

Timeout

This parameter appears only if the Data Collection Mode flag is set to CLI – i.e., if the test uses the command line program to collect measures. Specify the time for which the eG agent should wait for collecting the required metrics. By default, this is 60 seconds

Detailed Diagnosis

To make diagnosis more efficient and accurate, the eG Enterprise embeds an optional detailed diagnostic capability. With this capability, the eG agents can be configured to run detailed, more elaborate tests as and when specific problems are detected. To enable the detailed diagnosis capability of this test for a particular server, choose the On option. To disable the capability, click on the Off option.

The option to selectively enable/disable the detailed diagnosis capability will be available only if the following conditions are fulfilled:

  • The eG manager license should allow the detailed diagnosis capability
  • Both the normal and abnormal frequencies configured for the detailed diagnosis measures should not be 0.
Measurements made by the test
Measurement Description Measurement Unit Interpretation

Requests

Indicates the rate at which requests were processed by this thread during the last measurement period.

Requests/sec

This measure is a good indicator of the throughput of the web dispatcher threads.

Status

Indicates the current state of this thread.

 

The values reported by this measure and their numeric equivalents are available in the table below:

Measure Value Numeric Value
Idle 0
Running 1

Note:

This measure reports the Measure Values listed in the table above while indicating the current state of this thread. However, in the graph of this measure, this measure is indicated using only the Numeric Values listed above.

The detailed diagnosis of this measure if enables lists the thread ID and the request type.