cancel
Showing results for 
Search instead for 
Did you mean: 

PI is slow when using Sender Proxy.

Former Member
0 Kudos

Hi,

We configured Proxy to PI to JDBC, interface is working fine when getiing around 10,000 records. We are facing problems when there are 40000 to 50000 records. Cant PI handle these many records.

PI is going very slow and and nearly taking 2-3 hrs for processing records to target system.

What was the reason and please let me know how to achieve this process.

Thnaking you,

Hari

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Hari,

First of all using proxy the performance will be good than using adapters. So basically the issue is not with the proxies. It may be the peoblem with the configuration and the process which you are following.

If you are getting data from multiple interface which means that multiple applications. If you are inserting all the inerfaces data into same table better you can use stored procedure instead of standard functionality . If you are using this stored procedure the execution will be happen at database side. In this case it will not take much time to process the records to database.

Regards,

Raju

Answers (4)

Answers (4)

former_member303666
Active Participant
0 Kudos

hi,

when the records numbers is up.....automatically the db performance will goes down.....it will pick up the file slowly....finally it will process success.

regards,

kesava

Former Member
0 Kudos

one more suggestion..

create one stored procedure on target side...pass ur entire source xml as a xml string input to the target SP..

Chk with DB team they will parse that XML string at database level and do the necessary SQL operations....so by doing this u r passing entire source data at a single go to the SP which will results into performance improvement...

naveen_chichili
Active Contributor
0 Kudos

Hi Hari,

As mentioned above by Raja because of les number of threads allocated while accessing to your DB. That is the reason for being slow.

Regards,

Naveen.

rajasekhar_reddy14
Active Contributor
0 Kudos

Hi,

Only one interface going to process 40k messages at a time?? if yes

first you have to understand JDBC adapter can process only 5 messages parlelly, even you specify maximum concurenecey 50 , it will process only 5 records at a time.

that is the reason it is taking long to insert data in to data base.

you can increate the thread allocation for JDBC adapter to 10 like that in this case it will take lessa time.

Regards,

Raj

Former Member
0 Kudos

Hi Raj,

Here are 4 interfaces sending data to DB but 1 or 2 interfaces are getting 40k msgs, remaining are less.

Thanks.

naveen_chichili
Active Contributor
0 Kudos

Hi Hari,

Though you have only 4 interfaces interacting with DB and 2 with arround 40K msgs my better suggestion is to increase the Thread allocation so that you would be able to see the betterness...

Also you can use the option Disconnect from Database After Each Message Processing so that after processing the message the connection will disconnect.

Thanks and Regards,

Naveen.

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Even with increasing thread count for adapter might increase only slight improvement. If you could alter the design to use Stored Procedure on the target structure side will certainly give better performance for the high volume mesg interfaces. We have seen using insert statment for every record vs using Stored Procedure makes a big difference.