Amasty Team has recently issued a new extension Full Page Cache, aimed to speed up Magento store pages, known for their huge weight. Full Page Cache is a great success, it considerably reduces page load time and offer a number of other cool features. But actions speak louder than words. And statistics speaks even louder. Check Amasty new research on how fast can Magento be with Full Page Cache?
- CPU: Intel Xeon L5520 2.27GHz (16 core)
- RAM: 16 GB
- Storage: SSD INTEL SSDSC2BB480G4
- Magento Community 184.108.40.206
- Magento Sample Data 1.2.0
- Apache 2.2.22
- PHP 5.4.4 (mod_php + Zend OpCache 7.0.3)
- MySQL 5.5.35
For testing Apache jMeter with the following scenario was used:
- A visitor goes to website home page;
- Searches for “shirt” in the search field;
- The result is filtered by price ($0.00 — $99.99);
- After that the result is filtered by color (white color);
- As a result only 1 Product is left, the user opens its page;
- The Product is added to the cart at the Product Page;
- After that the user goes to the Category Page «Electronics / Cameras / Digital Cameras»;
- The user reloads the Category Page «Electronics / Cameras / Digital Cameras»;
- At the Category Page camera Canon PowerShot A630 is added for comparison;
- At the Category Page camera Kodak EasyShare C530 is added for comparison;
- The Products Comparison Page is opened;
- From the Products Comparison Page camera Canon PowerShot A630 is added to the cart.
The test was performed for 10, 20, 30, 40 and 50 simultaneous visitors in the variants “Only Magento cache on” and “Magento cache and FPC on”. Before every launch the Magento cache was cleared and a test for 10 simultaneous visitors was launched, but it results were not taken into account (this is done in order to prevent difference in the results connected with the increasing amount of cache during the successive test launches).
In order to compare all possible variants we have additionally tested a variant when Magento has caching turned off. The most impatient readers can see its result in the diagram below (the result for the Product Page with 50 simultaneous visitors).
|FPC on (sec)||FPC off (sec)||No caching (sec)|
In order to prevent the influence of the data transfer speed in the Internet the test was launched in the mode “Remote start”. In this case in the server where the tested Magento is installed Apache jMeter is launched in the server mode, which receives the test from the managing client, performs it and sends the results back to the client. The client part of Apache jMeter is launched on the desktop, it manages only the server part and shows the results. This way we have prevented the influence of the Internet channel load on the test results.
Every test was performed 10 times in order to provide correct calculation of the average value of the test results. This was for 50 simultaneous users jMeter will perform the test scenario 500 times. The test scenario contains 12 requests to the server (download of CSS page resources/JS/images are not taken into account in the test results), this way during the test with 50 simultaneous visitors 6000 requests are sent to the server.
The test results in ms come in the table as follows:
You have probably noticed that Category Page opens twice. This can be put to the fact that when product is added to the cart the status of the dynamic blocks, the content of which should be reloaded during the next request to the them, is changed. In this case the first Page impression from the cache is slower that the successive ones. To see the difference in the load speed (when the dynamic blocks are already reloaded) the test goes to the Category page one more time. And the page is downloaded completely from the cache.
According to the table data the following diagrams have been created for better visual assessment of the difference in the server reply speed.
The last diagram shows the average results on all the mentioned categories. Usage of the Full Page Cache Magento extension lets us in average increase the speed by 5 times. In some tests the difference is even bigger.