New Blog, New Theme, Better Performance
Short note on a few changes I’ve made lately … For those who syndicate my blog, I changed the look .. got bored of that Apple-ish look and installed a much cleaner one.
I also wanted to improve the reading experience and made tons of improvements on performance and loading time:
- I installed Varnish in front of Apache. I originally installed Varnish 2.1.5 a few weeks ago and the different was amazing. I load tested my blog using Blitz.io - you can see my results using just apache vs front-loading varnish . Impressive huh? I upgraded today to Varnish 3.0.1, added a security layer, a better config to allow dynamic purging, and integrated with external monitoring tool New Relic . Massive shout out to Kim Stefan Lindholm for his very informative Varnish Configuration Step by Step . Updated my Varnish config files to better integrate with Wordpress, passthrough admin settings, allow admin bar when logged in front-end, and send loading time and performance data to New Relic. Status: accomplished.
- I replaced WP Super Cache for w3 Total Cache. Super Cache gave me static files which was useful, but Varnish is taking care of that. W3 Total Cache also has Minification, Object Caching, Database Caching, Varnish flushing, and a better Amazon CloudFront integration. I server all static files front CloudFront, including attachments, images, theme files, js, css, etc. The built-in JS and CSS minification did not work well for me… I disabled them and just enabled XHTML Minification.
- Installed Better WordPress Minify, which combines and minifies my JS and CSS files. Tested against Google Pagespeed and I’m scoring a 90/100, could be higher by some of the CloudFront files got cached with not expiration … I added it through W3 Total Cache, but it will take some time for Amazon to update.
So far so good - like my new setup … oh, and everything runs on Amazon AWS EC2 Free Microinstance … Zero hosting cost, zero cost for 3rd party tools, zero total out of pocket for everything described in this post.