There are some website benchmark tools, looking after various aspects of performance.
The tool I use most is Apache Benchmark, and parameters are 10 concurrencies, e.g.
ab -c 10 -n 200 (page_url)
It reflects the status quo. I have a decent server but the sites are not busy.
Since I dived into Magento, I have been spent quite a lot researching how to improve its speed. I implemented database query cache, enabled block html cache, utilised memcache, tmpfs, apc, etc, etc. Recently I started a project called Full Page Cache Preparer (FPCP) and expected it fundamentally improve Magento speed on Catalog and Cms pages.
FPCP is only 20% completion (it is not producing all blocks with session variables, but shopping cart sidebar), but I am eager to see some result. So I turn it on and compare the Requests Per Second to the time when it is off. I see a marginal 1-2% improvement which is very disappointing.
Why I had the impression that full page cache feature will dramatically drive Magento faster? What if full page cache is working with web server cache, say nginx ncache? I simulate a test by saving a page html source code to a static file and uploading it to web server. (I should have done this test before I started FPCP project.) The result is disappointing, again.
The test is done on a heavy page (with loads of images).
ADSL connection (8,187/1,291 kbps) to datacentre 100 mbps | ADSL connection (4,212/1,078 kbps) to datacentre 100 mbps | directly run ab test on webserver | |
Request via Magento /index.php | 9.18 | 4.56 | 16.23 |
Request a static .html file on filesystem (bypass php parser) | 8.23 | 4.65 | 3368.82 |
Request a .php file on filesystem (same content as .html, no php tag inside) | 8.72 | 4.62 | 1584.05 |
The figures in first two columns (ADSL connection) go up and down when I run tests again and again. Sometimes requesting a static file is even slower than requesting Magento index.php. My conclusion is, even when Magento full page cache is working in conjunction with nginx ncache, I cannot feel the sites are faster (when the server load is not high).
However, I will finish my FPCP module (some day) because I believe it benefits people whose server load is high. To improve my own sites, I will focus on basic (if I call FPCP hi-tech) page speed recommendations, e.g., optimise images, concurrent downloads, cookieless domains for static files, merge js/css files, gzip, etc.