Friday, May 16, 2014

Varnish 4 support and benchmark

A Varnish4-ready configuration file for the Varnish-Joomla pack is now ready. We also made a little benchmark. TLDR: there are no significant differences between Varnish 3 and Varnish 4.

The Varnish under load has been a 2-core VPS with 1GB RAM. Varnish 3.0.4 from repos has been tested against Varnish 4.0.0 built from a source tarball. Both were configured in an identical way, except from the VCL of course. There was Joomla 3.3 behind Varnish, and cache has been pre-warmed before testing in both cases.

The machine generating load has been a 6-core hardware server with 32 GB RAM. The software used to generate load was the Apache Benchmark.

The machines were in different data centers owned by the same company, the traffic has been routed via internal network (6 hops, 2ms ping). Both machines were connected using a gigabit ethernet card. Bandwidth usage has been around 500 Mbit/s at all time. Traffic volume has been bound by CPU usage on the Varnish machine with system load approaching 20 at the end of the test for both Varnish versions.

Both Varnish versions performed similarly. It was worrying that Varnish 4 had a number of failed connections - the test has been repeated more than one time, and the failed connections always were there. This did not happen with Varnish 3.

Without further ado: Varnish 3 and Varnish 4 results from AB.

If you need help building the new Varnish from source, converting your configuration or vmods, or anything else Varnish-related, don't hesistate to contact us.

Tuesday, May 13, 2014

Varnish for Joomla! 3.3

The Varnish-Joomla pack has been upgraded to support Joomla! 3.3 which has been released last week. Existing clients are eligible for a free upgrade after contacting us.

Originally we planned this release to support Varnish 4 which has been released two weeks ago, but it was more work than expected and clients were more interested in Joomla 3.3 support.

Varnish 4 doesn't bring any significant performance gains for small-to-middle sized web sites, it has separate backend and frontend processing threads, which could be better in certain high-traffic scenarios. It looks like this release was more focused on cleaning up the Varnish Configuration Language and bringing log analysis features (which are awesome, by the way).