cancel
Showing results for 
Search instead for 
Did you mean: 

Maximum number of messages PI can handle in synchronous calls

Former Member
0 Kudos

Hi,

I'm handling a SOAP to JDBC scenario (Sync).

From SQL we are expecting 20K records, now my doubt is will the PI can handle this without any issues.

Because when i tested the scenario for 4K messages in SOAP UI, I got time out error.

Searched for this question in forum but unfortunately didn't get a clearer one.

It will be great if someone can explain this.

Thanks

Newa

Accepted Solutions (0)

Answers (5)

Answers (5)

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Few more cents... Since you talk about 20 k records I would also recommend you to discuss with DBAs to make sure the database table is indexed well. This is very crucial factor. Many times even simple select query against table without index causing more delays and that eventually causes timeout issues in responding to PI side.  Also you can try stored procedure if you think the table definition is very complex and don't want to do complex joins.

rajasekhar_reddy14
Active Contributor
0 Kudos

few more cents,

I dont think it is a big challenge to deal with 20k messages but only concern here is Sync scenario.

You have to make sure that your your JDBC syste response time is quick and done push huge payload in one call.

Timeout erros comes when target system  not responded in withnin time.

Best Regards,

Raj

iaki_vila
Active Contributor
0 Kudos

Hi Archanaa,

I advise that the best procedure is to do an aproximation in a Quality System increasing the number of messages per second that it would normal. You should think, as Greg says, that there are a largue number of variables that are taking part, including your SAP PI server hardware. That is the reason, i guess because SAP doesn't say the recommendable throughput in PI.

When you prepare a consisten test, you could think if it's necessary to improve the communication, with for example an extra advanced adapter engine.

Regards.

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

adding to what Greg mentioned - make sure you use ICO (interface configuration object)

to configure your scenario so it will not run on the ABAP stack at all - this is crucial for PI sync scenarios in any case

Regards,

Michal Krawczyk

former_member184681
Active Contributor
0 Kudos

Hi,

Generally, it depends on the size of the records. 20K records having only a few fields would result in a message like a few megabytes, that should be processed by PI in an appropriate time. Therefore, make sure of the following:

1. How big are the records, how many fields do they contain and how big the fields are?

2. How long it takes to the receiver database itself to collect the records, I mean, if you executed the SQL query/stored procedure there directly.

3. Which mapping technique do you use for mapping the request and more importantly: the response in PI? Is it developed carefully and taking performance into account?

4. What is the timeout set in the sender SOAP client? Setting a longer timeout in the sender app might prove to be the simplest solution.

Regards,

Greg

Former Member
0 Kudos

Hi,

As mentioned by you, we are using ICO.

We are using graphical mapping both at the sender and receiver end.

There are 8 fiels and when checked with the SQL team they are saying 20k records will be fetched in 10 secs..

At the SOAP sender communication channel I dont see any time out please tell me as what Im missing.

Also with the above details, could you tell me how PI will work.

Thanks

Newa

former_member184681
Active Contributor
0 Kudos

Dear Newa,

>>> they are saying 20k records will be fetched in 10 secs

Are they just saying that, or you have verified it? Normally this should be true for a simple select, but in case of using some more complex queries, including several tables, processing time could increase drastically.

>>> At the SOAP sender communication channel I dont see any time out please tell me as what Im missing.

Actually, I meant the sender application's timeout. Normally, when an application connects to a SOAP server (which is PI in your scenario), it can set how long it wants to wait for the response. Here that you know that processing might take a few minutes, you should set the timeout properly in the sender app.

Regards,

Greg