eValid Functional Tests were composed into LoadTest scenarios and applied to an application to provide stress and limit testing. A series of experiments showed that the back-end database was overloaded at fairly low load levels. After tuning steps using the back-end SQL trace information, the capacity of the system was increased by a factor of three.
This application is part of a large system used by the Medical Council of Canada (MCC) to support its mandate to certify medical doctors throughout Canada. These examinations are scheduled for particular times with a scheduling feature of the application, and results are released via the web in another part of the application. (The actual examinations are administered via the web, and that portion of the application is also supported with eValid tests.)
The particular project summarized here tested two features of the public-facing component of the system: (A) the capability of the system to schedule examination slots, and (B) the facility that releases exam results (PASS/FAIL) to registrants.
The reason capacity was an issue is that the regular scheduling and results release are "opened for business" at a particular startup time, and this is known to cause a big spike in usage immediately after the startup time. For example, up to 80% of the ~4,000 users attempt to schedule their exams within the first few hours after the schedule is opened for the next round of tests. Similarly, when results are made available, a similar fraction of the user population logs on (or registers and then logs on) the see their test results.
eValid Application Description
eValid was used to simulate full-context users in the two ways described above. LoadTest scenario playbacks were limited to ~20 simultaneous playbacks per machine, and up to 15 machines were used for ~300 total simulated users. These machines were connected via a 1 Gbps LAN through a high-speed to the server complex.
There were two scenarios, for (A) and (B), and these scenarios were run independently to achieve the balancing results described below.
Continuous monitoring of the server performance statistics, including detailed use of the SQL database traces, allowed MCC to identify significant bottlenecks at a low usage level. After minor changes were made, primarily to tune the SQL database back-end system and adjust application-level caching, a performance increase (capacity increase) of about 3X was achieved.
Thanks go to Mr. David R. Miller, Medical Council of Canada (MCC), for sharing the general nature of his results for this eValid Success Story.