performance issues in jdbc adapter

Hello,
We have a interface which receives a request from HTTP call and based on this request data will be fetched through rfc and inserted into the Database.

This is currently in production and users are complaining that performance is very very slow. Multiple requests will be raised for this interface what i have observed is that some database operations are in still running mode as a result its causing other threads too are also taking longer time.

We have servers at different geographical locations and i think netwrok latency may be one of the reason for causing this.

Is there any other ways where i can improve the performance of the same

Your replies will be valuable to me

Rajesh

Hello,
We have a interface which receives a request from HTTP call and based on this request data will be fetched through rfc and inserted into the Database.

This is currently in production and users are complaining that performance is very very slow. Multiple requests will be raised for this interface what i have observed is that some database operations are in still running mode as a result its causing other threads too are also taking longer time.

We have servers at different geographical locations and i think netwrok latency may be one of the reason for causing this.

Is there any other ways where i can improve the performance of the same

Your replies will be valuable to me

Rajesh

Hi Rajesh,

Two things you can do -

  1. Check to database from where you are fetching that data, the proper indexing has been done or not for particular columns based on that you are fetching the records.
  2. Fix the timeout for a particular adapter,so if it is taking more time than it will be stopped and will not affect the other threads. First do the some testing and measure the time and take timeout value little above that for safer side, I hope it will help you.

Thanks,

Hi Rajesh,

I think that there are two things you can do in your case -

  1. Check that proper indexing has been done on your columns in database from where you are fetching the records, if not then do it, it am sure it will make good improvement.

  2. Give some time out value to your adpater service to do his job. I want say here that do proper testing and measure time, and now give this time (+some more time for safer side ) in the property panel of flow service from where you are calling this adapter, so webMethod will stop it if this service is not able to finish his job in this particular time, so it will not affect some threads.

Some other guys can also suggest some ways…

Thanks,

Bijendra

While creating the jdbc pools, make sure, minimum number and maximum number of connections and idle timeout is set…

Also check if any connection is going stale while processing the data.

note:
Out of all adapters SAG provides, JDBC is the most stable one. As mentioned by Bijendra Probably indexing the tables should resolve the issue.