ASP.Net Web Services Response Time Slow
We are using ASP.Net Web services.
The architecture is Desktop Based Application developed in .Net 3.5 - Client App (Client Machine) ASP.Net Based Web Service in .Net 3.5 - Business Logic Layer (IIS on Server) SQL 2005 Database - Database Layer (Same or different server then IIS)
The application is almost developed and it is going in for first implementation. On day 1 we have faced a show stopper issue. We have loaded database of patient's with 30000 records and the response time of patient search screen is more then 20 seconds. We have indexed the database and removed all unncessary calls a. from client to web service b. from web service to database. Still the response time is 7 seconds which is not acceptable it has to got down under 3 seconds. The main problem we see is 4 seconds are being taken as a part in which the web service returns the data of such size over network to client.
What is the solution to this?
If your search queries return large result sets, you could consider adding paging functionality to the webservice calls.
It seems unlikely that a user will review 250 (or an arbitrary number > 10) patients at a single glance. So instead of a method that returns all 250, you could return them in in sets of 10. You'll have to change the signature your web methods a bit though.
This would reduce the network payload.
You could cache the search results on the server, to avoid running expensive queries too often.
This could be part of a solution but there will probably be many other options!