Speed of Downloading Submission through API

Hi

We are trying to integrate ODK with external application and using the API for the same. Our process is simple- first we are fetching all instances of a particular form and then fetching each instance data through the submission data endpoint
[
http://123.456.567.789:8080/odk_server/view/downloadSubmission?formId=Form1_V1[@version=null@uiVersion=null]/Form1_v1[@key=uuid:43ere514-d45a-4q9a-bsds-d9b791cdfg48]
]

But the issue that we are facing is that it takes too much time for this API call to return a response. It is averaging to about 15 seconds per request. The ODK server is hosted on a windows server with not bad configuration.

Is there any benchmark regarding the speed of the API calls ? In your experience what is the standard time it take for this call to execute? And is there any way to quicken it?

I am just not able to figure out why it is taking 15 seconds to fetch one instance from DB??

Please help. It will be deeply appreciated.

Thanks
harsh

Hi Harsh,

In general, you'll get more help if you can describe what you've done to troubleshoot.

  • If this just started happening, what, if anything has changed.
  • Look at your CPU, RAM, and disk storage. Are you close to the maximum?
  • Set up a test server on different Windows server with a very simple form and no data in your DB. Add data and see if the problem happens then.
  • Set up a test server on App Engine with a very simple form. Add data and see if problem happens then.
  • Read the Tomcat/DB logs on your existing server to see if there are any hints as to what is going on.

Start with some of these suggestions and update the thread with your findings...