Increase load slows application
I have a queue management software build in CF 9 running on 16 MG Windows Server using MSSQL 2008.
The application is used for colleges or DMV's to manage multiple waiting lines or queues. We can have up to8 queues (lines) going at a time with 1 person inputting students or customers into the appropriate queue (i.e. Financial aid or Admissions, etc). Each of the departments share the same login to serve the student when it's their turn (i.e. Admissions, Records, Financial aid). A student is served by click a button Served and that removes them from the queue, it means they have been seen.
The problem I am experiencing is when the application has a load of 40 or more students in any of the queues the system slows down, takes up to a minute to refresh in order to add a new student or serve a student. We have diagnosed it's not the server it's something with the code. Any suggestions or anyone willing to look at it?
There's really no way anyone can make any concrete suggestions, because it could be one of many issues (or a combination of issues). How are you determining that it's the code and not the server?
Common culprits are:
- Inefficient SQL / database interaction (by far the most common problem)
- Insufficient memory, IO bandwidth, network trouble, or CPU/threading issues
- Excessive looping or recursive logic
- Single-threaded code acting as a bottleneck
What you really need to do is run a proper load test and analyze the results, because problems that only arise under load are definitely the most difficult to root out.
We will be under load rest of the week would you be interested in consulting on this issue or can you suggest some one?
Originally Posted by kiteless
July 10th, 2013, 08:37 AM
When I say "load test", I really mean a load test. It's important to have a repeatable load test that you can run so that as you make changes, you can re-run the test and know exactly what it did. Trying to test on a live server is much harder because the load fluctuates, and you want it to be exactly the same across your tests.
I definitely don't have time to look at this for you (I have a full-time job too heh) but you might reach out to Charlie Arehart. He's a long-time acquaintance who does consulting on issues like this. http://www.carehart.org/consulting/