8. Application Server Presentation . . . Internet Application Database Communication SAPGUI SAPGUI Internet Office Work- process Dispatcher TCP/IP Remote SQL IPC Local Buffer for R/3 Data, DW-Objects, ABAP-Objects Work- process Work- process
9.
10.
11.
12. Different Kind of Work Processes for different Tasks Dialog SAP Dispatcher Batch Spool Update Enqueue S B M G Message Gateway R/2 R/3 V E D 12 9 6 3 11 1 7 5 8 4 2 10
13.
14.
15.
16.
17.
18.
19.
20.
21.
22. Application Server Presentation . . . Internet Application Database Communication SAPGUI SAPGUI Internet Office Work- process Dispatcher TCP/IP Remote SQL IPC Local Buffer for R/3 Data, DW-Objects, ABAP-Objects Work- process Work- process
23. Processing of a SAP Transaction (1) TCP/IP Presentation . . . Internet Application Database Communication SAPGUI Work- process Dispatcher Remote SQL IPC Local Buffer for R/3 Data, DW-Objects, ABAP-Objects Start Transaction Assign User request to Workprocess Fetch data from buffer /database Re- turn data for next step 1 2 3 4 5 Work- process Work- process
24. Processing of a SAP Transaction (2) Presentation . . . Internet Application Database Communication SAPGUI Work- process Dispatcher TCP/IP Remote SQL IPC Local Buffer for R/3 Data, DW-Objects, ABAP-Objects 1 2 3 5 6 8 Fetch data from buffer/ database 9 7 10 Assign User request to Workprocess Re- turn data for next step Work- process Work- process
25. Processing of a SAP Transaction (3) Presentation . . . Internet Application Database Communication SAPGUI Work- process Dispatcher TCP/IP Remote SQL IPC Local Buffer for R/3 Data, DW-Objects, ABAP-Objects 1 2 3 4 5 6 8 9 7 10 11 12 13 14 Update data on database End transaction Request for update Work- process Work- process
26. SAP Communication Interfaces High Level Low level SAP Technology Communication Interface Communication System Mail MAPI SMTP X.400 EDI Business API RFC CPI-C Q-API IDOC ALE OLE
35. Correction and Transport System R/3 System R/3 System R/3 System Development Production Quality Assurance Change Request Moving changes from one R/3 system to another [email_address]
36.
37.
38.
39.
Hinweis der Redaktion
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.
Update work processes actually manipulate the database, so they would be better served to be on the actual database server. They make all the changes to the database within the R/3 system.
SAP makes distinctions between the V1 and V2 component. V1 contains the time critical processes that require immediate updating whereas V2 processes are less critical. During updates there can be a combination of V1 and V2 updates. When errors occur during the V1 update, all changes are rolled back and any subsequent V2 components are not executed. Errors occurring the the V2 phase requires that only changes in the V2 component be rolled back.
This single message server per system sends messages between the various application servers. Messages include update or batch job starts. The communication is setup through the dispatchers and is used for small internal messages.
Gateways connect the R/3 system to other systems such as R/2 or other external systems. They facilitate the transfer of large amounts of data through the use of TCP/IP.
In order to change the number of work processes, you must change the system profile and restart the system. A system should have at least two dialog work processes at all times to ensure correct usage. In case something is wrong, an administrator would need to be able to interactively log on to the system. You need to have at least one V1 and V2 work processes in order to make updates.
Back to our picture.
The following outlines the course of events for an application: 1) The user sends a request to the app server. 2) The dispatcher receives the request and assigns it to a work process. 3) The work process looks in its buffer for the requested data. 4) It finds the data and once it finishes handling the request it sends the result back to the dispatcher. 5) The dispatcher formats the results and sends it back to the SAPGUI.
6) The user makes another request of the system. 7) The dispatcher receives the request and assigns it to a work process 8) The work process retrieves data from the buffer or the database 9) The work process handles the request by interacting with the database and sends it back to the dispatcher 10) The dispatcher sends the data back to the user
11) Say the user requests an update. A request is sent to the dispatcher. 12) The dispatcher sends the request to the work process. 13) The work process makes the change to the database 14) The transaction ends.
This slide shows the various communication interfaces in the R/3 system. The ones closer to the top are the ones which implementers are most likely to work directly with. The ones at the bottom are more of internal SAP communication interfaces.
The Business Framework - the open, component-based architecture, which allows software components from SAP and third parties to interact and integrate with each other, is gaining more and more momentum. Business Components cover a broad range of business data and processes. Examples include customer order management, purchase requisitions, and invoices. Business API (BAPI) are methods which allow interfacing between the various business componenets. ALE - provides an interface between the various components
BAPI’s are merely methods within Business components. They allow outside applications to access those Business componenets. They are standardized methods which allow integration. It’s also object oriented in nature.
Here are some of the most important functions of Basis personnel.
Some of the responsibilities of Basis personnel include the maintenance and upkeep of the hardware and database as other typical system administrators do. Typically, sizing, upgrading, backup and recovering are some of the issues that are dealt with.
One of the big tasks of Basis personnel is User Administration. Users must be made and assigned the correct profiles so that they can do their job and not have any extra access to other transactions that they should not be able to view.
Client maintenance involves the creating of clients and running client copies and refreshes. Client exports and imports occurs when you wish to take a client from one system and move it to another. Exports make a file at the operating system level, which can then be imported into the target system. When clients are obsolete, they must be deleted in order to be more efficient with memory.
CTS is the notion of moving changes from one system to another. In the typical Development-Testing-Production environment, CTS is the mechanism of moving changes and modifications through the systems.
OSS is SAP’s online service system, which contains known problem, bug fixes, and news. It’s a great source of information to find answers to your problems, and even affords you the opportunity to send SAP questions that have stumped you. OSS also plays a role in ABAP development, as all ABAP programmers must be registered through OSS.