Message Prioritization in Advanced Adapter Engine
Message Prioritization in Advanced Adapter Engine
Message Prioritization in Advanced Adapter Engine
Applies to:
SAP Net Weaver PI 7.1. For more information, visit the Service Bus-based Integration homepage
Summary
Often it becomes necessary to make sure that business critical messages are getting processed under high
load condition. Through this guide Message Prioritization in Advanced adapter engine a newly introduced
feature of PI 7.1 is explained that will help to avoid high priority messages getting stuck due to a backlog of
other messages on the same node.
Author Bio
Sunil Singh is a SAP PI/XI Consultant in L&T InfoTech Ltd. His area of expertise includes SAP PI/XI, Java.
Table of Contents
Introduction .........................................................................................................................................................3
The Concept .......................................................................................................................................................3
Business Scenario ..............................................................................................................................................3
Implementation ...................................................................................................................................................3
Design Steps...................................................................................................................................................3
Configuration Steps.........................................................................................................................................4
RWB Steps......................................................................................................................................................4
Run Time Observations ..................................................................................................................................5
Conclusion ..........................................................................................................................................................7
Related Content..................................................................................................................................................8
Disclaimer and Liability Notice............................................................................................................................9
Introduction
Prior to PI7.1 the message prioritization was available on Integration Engine which is restricted to messages
with quality of service EO or EOIO. With PI 7.1 a provision is made to define the rule so as to assign the
priority to a message having QoS EO, EOIO or BE.
Message Prioritization is designed to avoid high priority messages getting stuck due to a backlog of other
messages on the same node. For message processing on the Adapter Engine we can define rules according
to which messages with different priorities (low, normal, or high) are processed. It uses the attributes from
the message header to execute the rules defined.
The Concept
Based on the rule defined in Message Prioritization of AE High/Medium/Low priority can be assigned to the
messages per Sender/Receiver, Party/Component, Interface, and Namespace. If for one individual adapter
type all the worker threads are occupied (at a given node), prioritization takes place.
Business Scenario
In order to show the message prioritization taking place file to file scenario with some delay in message
mapping is implemented so as to consume all the worker thread of an adapter.
Implementation
Design Steps
1. Create Data Type : DT_MyInfo
Configuration Steps
As mentioned above message prioritization takes place when all the worker threads are occupied. In order to
reach this threshold I have sent the messages through three different sender components through file
adapter.
1. Create three sender interfaces BC_File , BS_AAE, BS_AEE_1.
2. Create Sender and receiver file adapter for each sender component.
3. Create receiver determination, Interface Determination, Sender and Receiver Agreement for each.
RWB Steps
So as to message prioritization to take place for specific interface we have to define a role in RWB. To be
able to define rules for a prioritized message processing, proceed as follows:
1. Open the Message Prioritization tab where we have to define rule for prioritization.
2. Click on “create” and give the description of your rule and then Select Sender/Receiver,
Party/Component, Interface, and Namespace for which rule needs to be configured. As shown below rules
are configured where priority is defined based on Sender service.
As depicted above the messages sent by sender components BC_File and BS_AAE have low priority while
the messages sent by sender component BS_AAE_1 have high priority.
File adapter is used to send and receive the messages by the above sender components.
Large number of messages is sent through above sender components until all the worker threads of sender
file adapter get occupied.
To monitor the current status of file sender adapter go to RWB->Component Monitoring->Adapter Monitoring
->Engine Status
As shown in the figure above file sender adapter queue is assigned five threads through which the adapter
can process the messages in parallel.
Large number of messages is sent through above sender components until all the worker threads of sender
file adapter get occupied.
Run Time Observations
As shown in the figure above all the worker threads of sender file adapter are occupied, in such
circumstances message prioritization taking place in Adapter engine can be observed
As shown in the figure above maximum amount of processing time is assigned to the message coming from
BS_AAE_1 which is assigned high priority.
To cross verify the things we can change the prioritization as shown below wherein sender component
BC_File is given high priority and other two are with low priority.
When messages were monitored in RWB->Message Monitoring it was observed that messages coming from
BC_File were assigned maximum processing time as accepted.
Conclusion
By configuring the rule for message prioritization on AE one can make sure that business critical data will not
get blocked at high load condition.
Related Content.
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70b8adc3-728c-2a10-7fad-d43f29074ef8
http://help.sap.com/saphelp_nwpi711/helpdata/en/48/cbb578cea80783e10000000a42189d/frameset.htm
SAP Note No. 1129604
For more information, visit the Service Bus-based Integration homepage