SAP Basis Functions
What the Basis system ?
How does SAP handle a transaction request?
Differentiating between the various work processes?
Understanding the basic functions of the Basis Module?
This slide depicts how an application server works. Users make requests at the presentation layer and through TCP/IP these requests get sent to the application server. The dispatcher then takes the requests and assign them to work processes which handle the requests. More detailed explanations are on the following slides.
The dispatcher is a program which manages the resources of the R/3 applications. They are very similar to a police dispatcher who receives requests via 911 and routes it to available officers who are in the area.
The dispatcher receives requests from the many users on the system and passes them along to the corresponding work processes which are free. It also manages the information flow between the app server and the SAPGUI.
Each app server has only one dispatcher because it could get kind of difficult for two dispatchers to route requests to the work processes.
The dispatcher is responsible for balancing the workload between the work processes so that processes don’t sit idle.
Memory management is also one of its duties. The dispatcher must also organize the communication between the work processes and also between the SAPGUI and app server.
Work processes are the actual programs which execute tasks. They update the database, run batch programs, and send messages. Work processes are comprised of a task handler, an ABAP/4 processor, dialog interpreter and database interface.
They execute dialog steps for a user and typically only do the work of displaying one screen at a time. In other words, work processes present one screen of data, and are immediately freed to handle other tasks. The next screen is then handled by the next available work process.
The task handler coordinates the activities of the work process. The database interface allows for the work process to directly access the database. The dialog interpreter is used to coordinate presentation information and the ABAP/4 processor is useful when running programs.
There are seven different types of work processes which will be described in detail in the following slides. The five work processes in the middle around the dispatcher are the main work processes in use in the application servers. The two work processes on the outside are used for communication methods within the systems.
The dialog work process is typically the most common work process. It handles all the interactive requests of the R/3 system. Any time a user sends a request the dialog work process plays a part in the work. Dialog work processes handle just one dialog step and are immediately freed to handle other requests. So these work processes are constantly switching between users. This limits the number of dialog work processes, as you would need the same number of work processes as users otherwise.
Background work processes execute long running and CPU intensive programs which are required to be run. Some examples include client copies and long listing reports.
Background jobs can also be set to run at specific times.
In charge of formatting data for printing and sending it to the host spool system. Only one spool work process per host.
In order to ensure the integrity of the database, the enqueue work process is responsible for the lock management system. There is only one enqueue work process per system as it synchronizes the data access for multiple application servers and work processes. When a work process is accessing data for possible manipulation it is locked so that other work processes cannot access the data until it is released.