SAP BASIS Introductory Training Program - Day 3
SAP BASIS Introductory Training Program - Day 3
Program
DAY 3 – Operations in AS ABAP Systems : Part 2
CONFIDENTIAL
Day 3 : Agenda
Who -
Administrators
Database:
(performance, backup, ..)
8 4
7 5
6
Virtual
ABAP Work DISPATCHER Memory
Processes Segment
D B B
Virtual
Memory
Segment
• Memory refers to a part of the SAP system which is used a temporary container
of data used by processes. This includes Operating system processes , Database
processes as well as SAP application processes.
• A system consists of physical memory , called RAM
• Physical memory may not be sufficient in most cases , so some part of the file
system disk storage can be used to supplement the physical memory.
• Using the concept of virtual memory , the Operating system can provide SAP
applications with a contiguous memory combining both RAM and Files on the
OS.Such files are known as paging files or swap.
• This virtual memory available to SAP processes is called “Virtual Addressable
Space”
• The virtual memory is further subdivided into a stack area and heap area. A stack
is where data related to recursive functions and loops in function calls are stored
for the process that needs the data. A heap is where the data elements such as
constants and variables are stored during report and function execution
• In 32 Bit systems , each SAP work process can only address upto 2 32-1 bits of
memory space , which is around 4 GB
• But most Operating systems will not permit a single process to address 4 GB of
space. There are limitations and differences between operating systems , but
about 2 GB of virtual memory is available to each SAP work process. This is the
maximum addressable limit
• Please see the example below
VIRTUAL MEMORY
• Theoretically , the configuration
indicates a total of 108 GB of virtual
RAM memory , which can support upto 54
8 GB
SAP processes during peak memory
utilization. However the amount of
PAGING
memory to be allocated should be
FILES
100 GB decided on actual performance of the
system
• The operating system will reserve a part of the virtual memory , known as a
segment when the SAP work processes starts to execute. The size of this
segment is set in the SAP profile parameters.
• The operating system will reserve local process memory as well as a shared
process memory
• The “local process memory” segment can be addressed only by one of the
processes , i.e. , any one of the DVEBMS processes.
• There are data elements that needs to be shared between say , a dialog process
and an update process , and these elements are processed in the “shared
memory” segment.
• The three types of SAP Memory are shown below :
Virtual Memory
Buffer Purpose
Repository (Nametab) The name table (nametab) contains the table and field definitions that are activated in
Buffer the SAP System. An entry is made in the Repository buffer when a mass activator or a
user (using SE11) requests to activate a table. The corresponding name table is then
generated from the information that is managed in the Repository. There are 4 sub-
buffers : Table definition , Field definition , Short Nametab and Initial records.
Table Buffer This buffer can store a single record with its field values , or multiple table records.
There are two types , Partial Table and Generic Table buffer
Program Buffer Compiled version of ABAP programs are stored in this buffer
SAPgui Buffer There are two types : Presentation and CUA buffers. The generated screens from
SAP transactions are stored in this buffer as well as SAPgui menus , pushbutton
definitions etc.
Roll & Paging Buffers & This buffer stores the input & output data from a user request for processing. The
Extended Memory extended memory stores a large portion of the internal tables of a program.
SAP Calendar Buffer All defined factory and public holiday calendar objects are stored in this buffer
Import/Export Buffer Import / export buffers are used to store data that must be available to several work
processes. They are used, for example, for the Available-To-Promise logic (ATP logic)
in Logistics
SAP Cursor Cache The SAP cursor cache helps to improve system performance by reducing the number
of parsing of SQL statements; it is database-dependent
Hit Ratio is
percentage of times
an object was found in
Size of the Buffer in
the SAP buffer ,
KBs
instead of having to
fetch the object from
Number of Objects in
the database. A high The swaps value is the number of objects that had
the buffer
hit ratio signifies very been kept in the buffer for sometime , but had to
good buffer quality swapped with a new object that was fetched from
and is indicative of the database as part of new user request. Ideally
good system the number of swaps should not exceed the setting
performance for directory size in a system. As part of buffer
tuning , ensure that number of swaps are not more
than twice the number of objects set for a buffer. If
this is not the case , increase the size of the Buffer
memory to reduce swaps and reduce the database
access calls
NOTE
Using ST02 , you can
tune the buffer
parameter values.
Typically the program
and table buffers are
allocated higher values.
But buffer tuning is a
fine art. The SAP
system after installation
will have some default
values. You must
observe the system
behavior for a couple of
months and then see
the buffer quality and
swaps pattern to take a
decision to change the
memory limit for a
buffer
Request Dispatcher
queues Work
process n
Screen
Internal memory
Work
process 1 processor
ABAP
processor
Task
handler ...
Database
interface
The time profile information provides clues on the behavioral pattern of the system. You can identify load
and activity on the system by looking at the number of steps and the average response time for each
step. Comparatively higher response times indicate that the system is under load
August 12, 2024
User Profile
Commands
• saposcol –s can be used to check the
status
• Start Saposcol:
• saposcol [-l] [pf=complete name of
saposcol profile] [-t[level]] [-z]
• Stop saposcol
• saposcol -k [pf=complete name of
saposcol profile] [-t[level]] [-z]
What is OSS ?
OSS is an abbreviation for Online Support Services
What are OSS Notes ?
SAP OSS Notes are technical solution briefs that provides information
on the cause of an error , its solution and a recommendation on what
technical steps are required to be taken to fix the problem
Where can I access OSS Notes ?
OSS Notes are accessible via SAP Service Market Place Portal with the
URL : https://service.sap.com/notes
How to I gain access to the SAP Service Market Place ?
You can request the SAP Super Administrator of the SAP environment
for a “S” user ID and password with the authorisation for viewing OSS
Notes
The information is read from the dev_w<x> , current work process log file
This symbol signifies an error of “high priority”
This symbol signifies a “warning” , which is of low priority
SAP SYSTEM
WHERE
WHAT
HOW
WHY
• At the data storage level, the area of the main memory that contains the monitoring data from
the data collector is called the monitoring segment. As the main memory data is always
overwritten, it can be permanently copied to database tables. You can then analyze the data
later. The data collection and storage elements must be present on every component that is to
be centrally monitored.
• Caution: Note that every instances of an SAP system has its own monitoring segment in shared
memory. This means that for an SAP system with eight instances, there are eight different
monitoring segments.The number of monitoring segments is determined by the number of
instances. Whether or not several instances run on the same hardware, for instance, is of no
significance here.
• The administration level allows the data from the monitoring segment to be displayed and
evaluated. SAP provides an expert tool, the CCMS Alert Monitor (transaction RZ20) as a
display transaction. The SAP Solution Manager can show the data in a business process-
oriented context. If the system identifies a problem,it can execute a prepared automatic
reaction, such as informing the responsible person. The analysis method then helps you to
investigate the problem.The CCMS Alert Monitoring Infrastructure can be extended. You can
integrate your own components using data collectors that you have written yourself.Third-party
vendors and partners can export the monitoring data from the monitoring segment using various
interfaces.
Attributes
Properties
• The Internet Communication Manager (ICM) is the process that turns the
conventional ABAP application server into a Web server or Web Client.
• Web applications that were developed specifically for SAP ITS are called Internet Application Components
(IACs). These include Employee Self Services (ESS) that are based on SAP R/3 and SAP R/3 Enterprise or the
SAP Online Store. The SAP GUI for HTML also uses the SAP ITS.
• SAP ITS is therefore required for existingWeb applications (in IAC technology) and the SAP GUI for HTML,
regardless of the basis release of the corresponding SAP system.
• SAP Kernel has been extended with the Internet Communication Manager (ICM) process to process HTTP
requests directly from the internet or to send HTTP client requests to the internet
• The ICM process forwards requests to the Internet Communication Framework (ICF), which supports numerous
programming models. This is how the SAP CRM, SAP BW, and SAP XI software components use this
infrastructure. A programming model for such applications are the Business Server Pages (BSPs)
1. The request is sent from the user's Web browser to the ICM using the HTTP
2. protocol. The ICM uses the requested URL to determine whether the application called is
implemented in the ABAP or Java stack of the SAP NetWeaver Application server.This example
uses an ABAP application that must be processed by a dialog work process.
3. The ICM stores the data received in a memory pipe (in the shared memory) and informs the ABAP
dispatcher.
4. The ABAP dispatcher adds the ICM request to the dispatcher queue, creates a new context (if there
is no context that is processed statefully), and selects a work process for processing.
5. The task handler in the work process reads the data from the memory pipe and transfers it to the ICF
controller, which is implemented using function module HTTP_DISPATCH_REQUEST.
6. The ICF controller transfers the request to the ICF manager, which is implemented by the ABAP
class CL_HTTP_SERVER. The ICF controller creates a server control block and fills it with the HTTP
request data that it requested from the ICM.
7. The client is then authenticated, whereby several logon options are available.
8. The HTTP request handler determined previously is called (this can process the request data, call
further applications, access the response object, and so on). When the HTTP request handler is
ready, it returns control to the ICF controller.
9. The task handler writes the response back to the memory pipe (response serialization) and signals to
the ICM that it has finished processing the request.
10. The ICM returns the response to the Web browser.
• Please NOTE the structure of the URL. The port number for calling the
ICM is always 80xx for an AS ABAP WAS , where xx is the instance
number
• The fully qualified host name must be maintained in Instance profile
parameters , i.e, icm/host_name_full
• Remote Function Calls have been used for many years as the technical interface with which SAP and
non-SAP systems are usually connected. It is irrelevant whether data exchange is synchronous or
asynchronous, periodic or aperiodic, or transactional. Many conceivable variants are supported.
• RFC is a superordinate term for various implementation variants. sRFC is the synchronous call of
function modules. This means that the client waits until the server has completed its processing.
• Within an SAP system, an RFC can also be executed asynchronously in another work process. This
variant is called aRFC.
• There is also tRFC, the transactional Remote Function Call. Transactional RFC is asynchronous and
ensures that data that is sent more than once due to network problems can be recognized at the server
side, by assigning a Transaction Identifier (TID). This allows you to prevent data being processed more
than once, leading to erroneous information in the application. Due to the asynchronous
processing,however, parameters can only be transferred from the client to the server in this case
returning information or status information directly is not possible.
• qRFC with Send Queue is an extension of tRFC. It creates a layer between applications and the tRFC
and only allows the tRFC to transfer a Logical Unit of Work (LUW) to the target server when its
predecessors are no longer in the associated wait queues. After a qRFC LUW is executed, the qRFC
manager automatically processes the next waiting qRFC LUW in accordance with theAugust sequence
12, 2024 in the
wait queue.
BREAKOUT
SESSION
EXERCISE
EXERCISE
• Go to transaction SICF
• Check the options available for activating/deactivating the nodes
• Launch the web service mentioned in the course
• Check the structure of the URL and identify the port
• Go to SMICM transaction
• Navigate to Goto -> Display Connections , Check the details of the
HTTP connections established
• From Administration , Navigate to ICM -> Exit(Soft) -> Global
• Return to SICF , and try and launch the webservice. Check the error
message received
• Return to SMICM , and Start the ICM again