Just for fun, I decided to measure our site performance in three ways:
- Apache server
- Apache server + Varnish
- Apache server + Varnish + CloudFlare
I measured this by accessing the normal public site (through CloudFlare) then setting up alternative URLs to the same website.
I know there could be lots of metrics to use for this, but I focused on just the "time to first byte" type measurement. I measured this every minute using Rigor (http://www.rigor.com), which is a great tool for this purpose and other purposes. After a couple of weeks of measuring this, here are the most recent results.
![Recent performance measurements from Rigor Recent performance measurements from Rigor](../sites/default/files/HistoryChart_0.png)
The chart is hard to read, so here are the details.
1. Apache
![Performance Data for Apache Performance Data for Apache](../sites/default/files/Apache.png)
2. Apache server + Varnish
![Performance Data for Apache + Varnish Performance Data for Apache + Varnish](../sites/default/files/Apache_Varnish.png)
3. Apache server + Varnish + CloudFlare
![Performance Data for Apache + Varnish + Cloudflare Performance Data for Apache + Varnish + Cloudflare](../sites/default/files/Apache_Varnich_Couldflare.png)
Analysis
As you can see, the Varnish solution is he fastest. Interestingly, the CloudFlare solution is the slowest. I don't know if that's because of how it interacts with Varnish, but I suspect it's another reason. I am guessing it's because the CloudFlare service is another webserver (nginx, I think) and it's doing a bunch of things to the web content "on the way out".