Page tree
Skip to end of metadata
Go to start of metadata

When a user logs on through saplogon via a logon group. The logon program asks the message server which servers are available/active (SMLG) then logs the user onto the best perform application server. This list of available/active application servers is updated by the program RSRZLLG0. This program is scheduled by SAPMSSY6 which is run every 'x' seconds, the frequency is determined by the parameter rdisp/abapautotime = <XXX>. The default is 300(5MINS)

Values for Response Time and User are Instance-dependent. Therefore if User treshold value for an instance is set it will be the same value for the same instance - it does not matter which logon group it is about.


118093 - Concepts of defining 'limits' in logon load balancing
26317 - Set up for LOGON group for autom. load balancing 
1107625 - RFC workload is unevely distributed 
51789 - Poor user distribution in logon distribution


SMLG -> Goto -> System diagnosis -> Cyclic system prog. 

If you see: "No cyclic system programs were active" "SAPMSSY6" "<missing>" Without this the load balancing cannot work and "All Contexts on Local Application server" in RZ20 cannot be displayed either. Also this is why SMLG shows minus value. For a detailed explanation why SAPMSSY6 is so important refer to SAP note #16201 Background program, timeout, SAPMSSY6 The restart is necessary to see, whether it is about a temporary or a permanent issue.

 The response time of the instance can be checked in   rz20   ->  SAP CCMS Monitor Templates    ->  Dialog Overview    ->   Dialog Response Time

  422129 - RZ21: Contexts are in incorrect segment

The response time used in SMLG is read directly from the CCMS.

In case of problems with the autoabap dispatcher it can be checked in SM50, if a work process is hanging with the user SAPSYS (locks in SM12 for the user SAPSYS in client 000).

 Regarding the usage of thresholds in SMLG: please note that the threshold is set for the instance, not for the complete system. Using a value of 400 for each instance does not make sense if this value is not reached for the complete system.
The load balancing does not support hard limits for the muber of logged on users as described in the attached note 118093. But at least you can use the limit values in SMLG to manipulate the quality value of the instances used in the load balancing.


Go to transaction SMLG, and than goto -> load distribution. There you will see a response time of the individual application servers.

 If the Dialog response time for an instance cannot be correctly reported by the transaction RZ20, also the instance load distribution cannot be correctly reported.

„The response time used in SMLG is read directly from the CCMS. If a value of 1- is displayed this means the load balancing is not able to read the response time from the shared memory of the monitoring. And indeed the CCMS shared memory is not available on the application servers.
To check the memory configuration of all instances using the command "sappfpar check pf=<instance profile>" and correct the configuration. After restarting the instances with a correct configuration the CCMS shared memory should be created correctly and the response time should be available also in the load balancing.”


Please refer to KBA : 1887982 - SMLG Load Distribution shows response time as "1-"


RZ03  Menue:  Utilities -> Diagnosis -> Cyclic system prog.

This function presents a list of disabled programs across all server. If you double click on a sever you get a program list which shows the last scheduling time of RSRZLLG0. If this time is older than 5 minutes something is wrong with RSRZLLG0. RZ03 allows you to enable stopped programs again.

you can verify the change as follows:

1) call transaction RZ03

   put the cursor on a server entry and    select Menue -> Utilities -> Diagnosis -> Control/Status area 2) double click on the entry which looks like this

   SAPMSSY6_RSRZLLG0    0     0  20070124 135846

3) change the entry in the popup to

   SAPMSSY6_RSRZLLG0    2     0  20070124 135846  disabled

4) Within the next five minutes the entry should be changed back    automatically

You can reactivate the program RSRZLLG0 manually as in note #16201 but not in background unfortunately.

If The program RSRZLLG0 exceeds the runtime of 10 seconds twice or it exceeds the runtime of 120 seconds once. The runtime status in transaction RZ03 or SMLG is displayed as 'disabled'. In this status the SMLG load balancing will not work.

 -You can ensure that the sapms<SID> can be resolved on the SAProuter server as well ( niping -v -S sapms<SID> ).

The RFC load balancing value will be stored in the table RZLLICLASS. This is a detail-table of the main LG table RZLLITAB which contains the actual relations between logon groups and instances.

If "Ext. RFC" is enabled, an entry containing the load balancing like "B=Best" will be written to RZLLICLASS. As the setting is stored, it should not be gone after a restart.
The procedure is explained in note 1385815


1835024 - SMLG: Servers are ignored in systems with many instances
1521782 - No maintained IP addresses are displayed in transaction SMLG
364552 - Loadbalancing does not find application server
27044  Login workload Balancing verification test
26317    Set up for LOGON group for autom. load balancing
118093   Concepts of defining 'limits' in logon load balancing


Server Selection and Load Balancing Using the SAP Web Dispatcher

Recommendations for Logon Load Balancing and Logon Groups:

Configuring Logon Groups

Balancing the Load:




  • No labels