cancel
Showing results for 
Search instead for 
Did you mean: 

xi prioritization in adapter engine (ae, af, adapter framework, java, jca)

woutdejong
Participant
0 Kudos

Hi Gurus,

We have both high and low priority messages using the SOAP Receiver Channel of the Central AE. How can we make sure that High Prio messages ALWAYS get a thread right away when entering the AE? Installing a separate AE is not an option.

When I look in RWB->Component Monitoring->Adapter Engine->Engine Status in the Queues tab, I see this:

...

SOAP_http://sap.com/xi/XI/SystemRecv true 1243 5(5) 5

[http://<xi>/mdt/SOAP_http://sap.com/xi/XI/SystemRecv]

...

When a new High Prio message enters, it can take 4 hours before it gets processed, because there are 1243 erroneous Low Prio messages also using the 5 available Threads...

This delay is of course unacceptable for High Prio messages.

Thanks.

Gr, Wout

Accepted Solutions (0)

Answers (1)

Answers (1)

aashish_sinha
Active Contributor
0 Kudos

Hi Wout,

In previous releases of PI/XI ,PI have adapter-specific queues. The number of maximum threads could be configured per direction (sender, receiver), server node and adapter type with the help of the Visual Administrator.

But in PI 7.1,Message Prioritization is designed to avoid that ‚prio high‘ messages get stuck due to a backlog of other messages on the same node.To ‚see it working‘ at all you need a backlog in the messaging system.Also To see the expected ratio in message delivery you need in addition comparable fast backends.

Prioritization during runtime takes place in principle whenever for a given adapter type and at a given moment of time all worker threads are occupied.

Regards

Aashish Sinha

woutdejong
Participant
0 Kudos

OK, forgot to mention we're on PI 7.0 and no intention of upgrading.

Has anybody tried to copy the SOAP Adapter deployment descriptor, change the namenamespace from "SOAP" and "http://sap.com/xi/XI/System" into "MySOAP" and "http://company.com", copy the SOAP Adapter Metadata to the same namenamespace and redeploy it?

This way you have created your own Queue, like ...

SOAP_http://sap.com/xi/XI/System.Call.maxConsumers 5

SOAP_http://sap.com/xi/XI/System.Recv.maxConsumers 5

SOAP_http://sap.com/xi/XI/System.Rqst.maxConsumers 5

SOAP_http://sap.com/xi/XI/System.Send.maxConsumers 5

MySOAP_http://company.com.Call.maxConsumers 5

MySOAP_http://company.com.Recv.maxConsumers 5

MySOAP_http://company.com.Rqst.maxConsumers 5

MySOAP_http://company.com.Send.maxConsumers 5

woutdejong
Participant
0 Kudos

Making a copy of the SOAP Adapter Metadata to your own seems to be working. You get your own backlog which does not interfere with the original adapter. However, you cannot MODIFY the CC that refers to your Adapter Metadata; you have to DELETE and reCREATE it with the modified settings....