Case: Myllyn Paras
Myllyn Paras - myllynparas.fi
Target: 500 concurrent users
Myllyn Paras produces and sells flour, flakes, pasta and groats as well as frozen dough and pastries. The company is a market leader in Finland in frozen dough and pasta products. Their recently launched site includes a recipe search where users can browse a large database of recipes through different filters. The number of possible filter combinations is fairly large and it is not feasible to cache everything beforehand.
Supervisor tested the site with TrueVisitor users, who selected a random filter from the first available options, such as "no wheat" or "dairy free". After the selection the recipe finder shows a narrower list of available filters and suggested recipes. Throughout these selection actions we simulated real user behaviour by scrolling the page a bit (to cause different scripts to load and images to render) and pausing for 3 to 7 seconds (to think). Every user performed a 2 to 4 searches within the single session before exiting the site.
The test was performed by incrementally adding new users to the site starting from one. When the concurrent users reached about 100 (20% of the desired target) the site started to slow down due to settings like MySQL memory limits. Interestingly, also the number of images served for the users caused outgoing network traffic to reach it's 100mb/s maximum capacity. The test was continued after the settings were tweaked and network interface capacity increased. The next bottleneck was found with about 250 concurrent users where the single CPU core reached 80% usage. After adding another core to the server, the test was continued and the site performed well under continuous load of 500 concurrent users performing recipe searches and browsing the site as real users would have.
After the test ops.host was able to give a recommendation that the network interface capacity is increased along with the additional CPU core to handle the desired traffic.