Saturday, December 13, 2008

Application Server Architecture

Application Server Architecture
All the requests that come from the presentation servers are directed first to the dispatcher.
Dispatcher
The dispatcher writes them fist to the dispatcher queue.
The dispatcher pulls the request from the queue on first-in , first-out basis.
Each request is then allocated to the first available work process.
User Context and Roll Area
To perform any processing for a user’s request a work process needs to address two special memory areas i.e. User Context and the program roll area.
The user context is a memory area that contains information about the user and the roll area is a memory area that contains information about the user, and the roll area is a memory area that contains information about the program execution.
User Context is responsible for:-
User’s Current settings
User Authorizations
The name of the program the user currently is running
Roll Area is responsible for:-
The values of the variables
The dynamic memory allocations
The current program pointer
Each time a user starts a program, a roll area is created for that instance of the program. If two users run the same program at the same time, two roll areas will exist-one for each user. The roll area is freed when the program ends.
Roll Area and the user context play an important part in dialog step processing.
Roll-In / Roll-out processing in dialog step process.
An ABAP/4 program only occupies a work process for one dialog step. At the beginning of the dialog step, the roll area and user context are rolled into the work process.
At the end of the dialog step they rolled out.During the roll in pointers to the roll area and user context are populated in the work process. This enables the work process to access the data in those areas and so perform processing for that user and that program.
Processing continues until the program sends a screen to the user. At that time, both areas are rolled out. Roll-out invalidates the pointers and disassociates these areas from the work process. That work process is now free to perform processing for other requests.
The program is now only occupying memory, and not consuming any CPU. The user is looking at the screen that was sent, and will soon send another request.
Work Processes:
Each work process has four components
Each work process is composed of the following:
(1)A task handler
(2)An ABAP/4 interpreter
(3)A screen interpreter
(4)A database interface
All requests pass through the task handler, which then funnels the request to the appropriate part of the work process.The interpreters interpret the ABAP/4 code.
Notice that there are two interpreters:
->ABAP/4 interpreter
->Screen interpreter.
There are actually two dialects of ABAP/4.
One is the full-blown ABAP/4 data processing language and the other is a very specialized screen processing language.
Each is processed by its own interpreter.
The database interface handles the job of communicating with the database.
Understanding the Types of Work Processes
There are seven types of work processes. Each handles a specific type of request.
The type of work processes and the types of requests that they handle .
WP Type:
D(Dialaog) Dialog requests
V(Update) Requests to update data in the database
B(Background) Background jobs
S(Spool) Print spool requests
E(Enqueue) Logical lock requests
M(Message) Routes messages between application servers within an R/3 system
G(Gateway) Funnels messages into and out of the R/3 system .

2 comments:

Anonymous said...

MOST IMPORTANT INFORMATION.
THANKS FOR SHARING US.

magnific said...

lately, I did not give plenty of thought to giving responses on site page reports and have positioned responses even less. Reading through your pleasant content, will assist me to do so sometimes.
http://www.sapmmonlinetraining.in/

Post a Comment