I am working on improving the performance of a Magento 1.9 store. I have made a lot of improvements that have reflected well in load tests on the home page and product pages, and on the cart without a cookie.
I have been asked to load test the checkout too. I am familiar with Blitz, ApacheBench, Siege, Jmeter and httperf but I am unsure of how best to use them to mimic normal cart page loads.
So far, I have visited the cart page in my browser, with items in my cart. I then copied the cookie into ApacheBench. The CPU and memory utilization on the server stayed very low but the throughput peaked at about 9 page loads per second, where we are able to do about 15x that on the home page (and it is reflected in the utilization).
There is nothing recent in the Magento error logs.
Specifically, I wonder if Magento or PHP might lock session data during the page load. If it does, which would be sensible in my opinion, then we would have to load test with a pool of different session cookies to avoid these locks, which would obviously not affect real usage the same way.
I am aware that there is already a similar thread. This thread relates specifically to any flaws in my methodology of copying one cookie into the load tester. I am looking for any insight about the use of sessions in Magento, flaws in my methodology and better evaluation techniques for the cart.
The setup is as follows: Magento 1.9, Nginx 1.9, HHVM 3.16 via FCGI (also tested with PHP 5.6), MariaDB 10.1 & Redis.