Featured Stories

New Responsive WooCommerce theme Sooperstore released

Ok it's pretty embarrassing how long it's been since I posted a blog update here. My last update was early July saying that a new theme was on the way "within a week" if I recall correctly. Well fast forward a week or 8 and I'm happy to announce that Sooperstore has finally been released! We actually released another theme in...

Continue Reading

5 Stunning Responsive WordPress themes

While responsive web design is a relatively new phenomenon, the WordPress theme development ecosystem has exploded with a plethora of stunning responsive WordPress themes over the past few months. It's one of the things that I really love about the WordPress community - the speed at which theme developers themselves are so responsive :)...

Continue Reading

High Performance WordPress – Part 4

Alrighty folks, if you’ve been following along with the High Performance WordPress post series you will by now have experienced the awesomeness of a WordPress website running on nginx. If you’ve not been following along what are you waiting for? Go check out the following posts first: Part 1 - VPS Setup Part 2 -...

Continue Reading

High Performance WordPress Part 3

Hey folks I’m back with Part Three of the High Performance WordPress guide. If you’ve not done so already, be sure to check out Parts One and Part Two which will take you from a position of having no server to a fully configured VPS machine running the kickass nginx web server and mysql - or a LEMP environment as those in...

Continue Reading

Well Hello There!

Hey there thanks for stopping by! ThemesForge is all about WordPress Themes. We don’t make ’em - but we pretty much live ’em, breath ’em, review ’em, rant about ’em and hope to keep you the you the discerning reader fully up to date about what is going on in the WordPress themes ecosystem.

Latest ThemesForge News

4 Popular WordPress Responsive Theme Frameworks

17 April 2012 comment icon2 | Categories: theme news

Following up on yesterday’s look at 5 Stunning Responsive WordPress themes, today we take a look at 4 of the most popular responsive WordPress theme frameworks. Why only 4? Well I could write up a list of 10 and then you could go spend another checking out those 10 options. Stuck on time? Thought so! Listen ANY of these frameworks are great starting points and if you’re only getting started with responsive design you should just pick one and dive in. For those unfamiliar with what a theme framework is, think of it as a well developed skeleton theme that has a well defined method and process for extending the skeleton into your own theme with it’s own look, feel and functionality usually via a child theme. We’ve covered a lot of frameworks here over the last couple of years including my own personal favourite the Genesis framework from StudioPress. But seeing as we’re knee deep in responsive design research at the moment I thought it would be worth sharing with you the wonderful array of theme frameworks that have popped up over the past 12 months that are specifically optimized for responsive web design.

Roots

We covered Roots not long after it launched almost a year ago. Roots has grown from strength to strength in the intervening period. Roots inherits a lot of it’s responsive traits from it’s ancestry which includes Twitter’s Bootstrap. Roots is definitely not for a beginner though in my opinion. It’s best suited to someone who can already confidently put together WordPress themes and who now wants to extend their skills into what I consider to be ground breaking territory in terms of WordPress theme development.

Demo & Download

Bones

If the best responsive framework was to be judged based on it’s homepage design then Bones would win hands down! I love the meticulous detail which has gone into the file structure and CSS source. Bones inherits some of it’s responsive concepts from Andy Clarke’s 320 and Up. Bones is a great theme to get started with responsive WordPress theme design and also now has an optional Genesis framework version which is pretty cool.

Demo & Download

Reverie

I’ll be honest I’ve not spent a huge amount of time playing with Reverie just yet but it’s on the todo list. Plus I’ve also spent a good bit of time playing with it’s bigger brother – the Foundation framework from Zurb which is taking the web design world by storm at the moment. Reverie takes things a bit deeper into WordPress adding some custom filters for things like image tags to ensure they are wrapped with figure tags.

Demo & Download

Skeleton for WordPress

Last but not least is my favourite responsive WordPress theme framework at the moment – Skeleton. Why is Skeleton my favourite? Well it’s built by the folks Simplethemes which means it’s been battle hardened by a professional theme shop. Second, it is based on the wonderful and lightweight Skeleton responsive CSS framework. If you’re just dipping your toes into the responsive theme development world my recommendation is to give Skeleton a spin.

Demo & Download

5 Stunning Responsive WordPress themes

17 April 2012 comment icon1 | Categories: commercial themes, featured

propulsion

While responsive web design is a relatively new phenomenon, the WordPress theme development ecosystem has exploded with a plethora of stunning responsive WordPress themes over the past few months. It’s one of the things that I really love about the WordPress community – the speed at which theme developers themselves are so responsive :) I’ve been doing a lot of work on my own responsive WordPress themes lately and have personally looked under the hood of many of the themes listed here. I can tell you that pretty much any of these themes are coded to an excellent standard and would serve as an excellent basis for your own websites. Rather than give you a list of 40 themes, I’ve shortlisted my 5 favorite responsive WordPress themes – hopefully I’ll save you some time in your own search!

Elogix

Elogix is a wonderfully crafted and stunningly beautiful responsive WordPress theme. The real value of Elogix lies in it’s carefully crafted responsiveness of pretty much every on screen element including things like it’s carousels and sliders.

Demo | Buy

Propulsion

Another absolute gem of a WordPress theme from Kreisi. Honestly, how this guy continues to produce theme after theme of such a high quality I don’t know! Propulsion also includes integration with WooCommerce which means propulsion is perfect if you are looking for a responsive WooCommerce theme. I’ve implemented Propulsion on a number of client sites recently with excellent results. The WooCommerce child theme is of an unparalleled standard in the WordPress community at present.

Demo | Buy

Smartstart

I must admit I’m a little bit in love with Smartstart at the moment. Again the devil is in the details with this one – perfectly crafted pixels. It would seem I’m not alone. This theme has racked up over 300 sales in a week on themeforest!

Demo | Buy

Responsive Fullscreen Studio

If I was to pick a single theme that demonstrates the sheet amazeballs that some WordPress theme developers are cooking up in 2012 I think it would be this bad boy. Seriously go check it out.

Demo | Buy

Office Responsive Business Theme

Office has become one of the most popular responsive WordPress themes. It is an excellent theme for any corporate website and has been optimised for the business market. I know as of writing that there is update in the works for Office with even more goodies.

Demo | Buy

Highly Infrequent links of the day

12 April 2012 comment icon0 | Categories: theme news

Who am I kidding, I don’t have the posting consistency to do a daily dose of links of interest :)

Today seems to be a rich vein of quality blog posts for the WordPress ecosystem so here’s some for you to enjoy!

New Book Launch – Client Orientated WordPress Development

New features that WordPress really needs – great post

Nice step through from Oli on his WordPress theme development process

Great new solution for responsive Images and WordPress

12 April 2012 comment icon2 | Categories: development

So I’m in the middle of building a new responsive WordPress theme and am currently knee deep in studying the various different techniques available for handling responsive images within the overall context of responsive web design. One thing is very evident at the moment –  this little chestnut has not been cracked yet. This is evident by the myriad of different approaches currently being adopted by the webs best and brightest. Some nice posts which summarise the most prevalent methods include:

The Challenge of Responsive Images (my preferred route thus far)

Responsive IMGS Part 2 – In-depth look at techniques (really detailed review of pretty much every known technique)

There’s also been some additional novel solutions proposed in the past few weeks including a return of the dreaded gif/png spacer. It seems pretty much the whole web is furiously exploring the best solution to responsive images at the moment!

With this in mind a really interesting blog post appeared today from Keir Whitaker of Viewport Industries on Automatic responsive images in WordPress. Keir’s post pretty much blew me away to be honest. While I’ve not had the chance to implement what Keir describes in the post, it pretty much looks like the best approach to responsive images I’ve seen to date. What’s more it really highlights the power of WordPress filters. Honestly, if you’ve not played with WordPress filters as part of your theme/plugin development you are missing out on a world of fun – they’re so damn powerful. Thanks to Keir for putting together a really detailed write up on this. It’s now top of my todo list to play with :)

 

Interview with WP Engine Founder Jason Cohen

11 April 2012 comment icon2 | Categories: performance

For fans of our High Performance WordPress series, you might be interested to see that Mixergy just posted a compelling interview with the founder of the fastest WordPress web host in the west, WP Engine Founder Jason Cohen. In the interview Jason talks with Mixergy about the early days of WP Engine and how the business has grown from zero to over $1 million in revenue in just one measly year.

Plus WordPress again is a massive market and growing. That just felt like it was going to be easier. One thing that we were talking about is how it felt like this company was easier. That is it grew fast, people liked it, it made sense and so forth. Some people want to say it’s easier because I’ve done a bunch of startups and therefore now it’s easy. That’s completely not true by the way and we can get into that, that it’s easy. It just means that maybe that you have a little bit more wisdom or you notice a pattern, but that’s here and there. Not everyday. It’s just an absolute struggle everyday, period. I credit, actually, the customer development part of that for why it was easy.

It’s a long interview and there is a transcript available on Mixergy but it’s well worth watching it in full if you can spare the time. Well done to Jason & Co.!

New theme shop ThemeZilla launch imminent from Orman Clark

03 April 2012 comment icon1 | Categories: commercial themes, theme news

tzilla

So it looks like the WordPress Commercial Theme landscape is about to get a BIG shakeup.

Orman Clark is one of the most popular and successful WordPress theme developers of all time. He’s generally regarded as one of the nicest gents you could possibly meet in the WordPress community. It’s no accident that Ormans combination of world class theme design and all round likeability and excellent support has seen him sky rocket to towards the top of the themeforest Top Authors list in an insanely short amount of time.

As someone who works with WordPress themes daily, Ormans themes have always been a dream to work with. When I first started building my own themes I didn’t have to look far for a benchmark for coding standards and general theme structure.

Against this backdrop it’s no surprise really to find that Orman is about to launch a brand new theme shop called ThemeZilla. Orman has partnered with what looks like a great team and from the sounds of it has been very busy building lots of new WordPress themes on a brand new theme framework. The team includes Gilbert Pellegrom of Dev7Studios who made the wonderful Nivo Slider WordPress plugin.

ThemeZilla has yet to unveil it’s new website but it sounds like it’s not far away now. It’s pretty much a guarantee that ThemeZilla will be a runaway success.

I for one can’t wait to see what the lads are cooking up!

Sneak peek at the new Theme Previewer Feature in the upcoming WordPress 3.4 Release

28 March 2012 comment icon0 | Categories: development

So it’s been a while since I checked out the bleeding edge dev trunk for WordPress. I spotted todays Dev Chat blog post from Jane Wells and I managed to find a few spare minutes this evening and pulled down the latest nightly build (3.4-alpha-20291 as of writing). One feature immediately jumped out of me and thought it would be of interest to you all.

The new WordPress Theme Previewer/Customizer

This is big big news for WordPress users and Theme Developers alike. I predict this will completely change how WordPress users go about customizing their themes and it will also have a big impact on what features theme developers implement in the very near future. It’s now quite common for theme developers to spend a lot of time building cool frontend theme customizers for their specific themes (e.g. Dandelion theme) and while that’s great – it does mean that we have a huge variance in the quality and consistency of these tools. Essentially users are having to learn a new tool each time they switch themes – in a similar way to the huge variance in quality for many Theme Options panels in WordPress themes. While the new Theme Customizer is not yet a 100% replacement for these custom tools that theme developers build, it’s a very impressive reboot of the existing preview facility. Let’s take a closer look.

 

The new Theme Customizer currently only seems to act as a replacement for the existing Theme Preview facility – in that the main entry point to using it is via clicking on the thumbnail of an inactive theme. This is definitely something that the dev team should look at because first of all it’s not at all clear that clicking on the thumbnail will actually launch the customizer. A simple hover state prompt would solve that. Second, I must also assume that it’s not possible currently to use this new feature with your current active theme. That’s a big limitation at the moment but given 3.4 is still an alpha I’m sure this might be in the thoughts of the dev team to extend in a future point release. (Sidenote: If I’m missing how to use this feature for an active theme please do let me know!)

Once launched, the previewer/customizer lets you tweak things like your Site Name, Tagline, Background colors, images, menus, and header properties – in a similar manner to how the current theme editing functions work in 3.3 but now through the magic of Javascript we can now edit and view changes in real time and preview exactly how they will appear via the frontend. You really have to see it to believe how compelling this feature will be for WordPress users.

This screenshot illustrates how and end user can make body background color changes which are reflected in real time.

What does mean for theme developers?

I would suggest now is a good time for theme developers to check out the new theme Customizer and see how it works with your themes. While the feature still needs some refinement it represents a new direction for how we think about building themes and I would love to see how far both the dev team and theme developers can take this.

Credit must go to koopersmith who has been leading the charge on this new feature – check out the Trac ticket history for more info on the evolution of Customizer.

Empowering journalists with WordPress

28 March 2012 comment icon0 | Categories: tutorials

Great write up from Ryan on how journalists can leverage WordPress.

One of my pet peeves — major, major pet peeves — is when sites break up articles into multiple pages. You’ve probably seen it before: two or three thousand words, spread out so that around 800 words or so occupy each page. I’m sorry if you do that, but that practicemakes me hate you.

Me too Ryan. Me too.

In like a lion

28 March 2012 comment icon0 | Categories: commercial themes, theme news

There’s an old weather expression about March

In like a lion….out like a lamb

Well whatever about the weather, from a workload perspective March definitely came in like a lion and it’s pretty much going out like a lion too! The good news is that the cloning project is going well and I should have three of myself to pick up the slack any day now :) There’s lot bubbling underneath the surface at themesforge these days – much to the detriment of the blog unfortunately. Early in the month I finally got Part 5 of the High Performance WordPress series which brought that series to a conclusion but the rest of the month has been a bit of a blur with personal and business projects taking priority.

IPEO Startup WordPress Theme

In all the manicness I forgot to mention that we shipped our second commercial theme back in February! IPEO is a commercial WordPress theme that is designed specifically to meet the needs of startups looking to give their WordPress powered website a serious shot in the arm. It’s the second theme we’ve launched on the Mojo themes marketplace and it’s proved to be quite the hit in March I’m glad to say.

So what’s the skinny on IPEO?

  • Super fast loading markup and CSS – no bloatware!
  • HTML5 Boilerplate powered
  • Passes the stringent test criteria evaluated in the Theme Check plugin
  • Lots of page templates including the now obligatory Portfolio template!
  • Widget powered Homepage which makes it really easy to manage your homepage – no pesky shortcodes required!
  • Detailed documentation and free support
If you dig what we do here at themesforge purchasing our commercial themes is a great way of helping us pay the bills here. We don’t want to be the next Woothemes or StudioPress just yet but we love making themes and all things WordPress so your support is very much appreciated!

Check out the demo or buy it on Mojo themes.

High Performance WordPress – Part 5 – Varnish Cache

03 March 2012 comment icon16 | Categories: performance, wordpress

varnish

Boom! At long last the eagerly awaited Part 5 of our High Performance WordPress series sees the light of day!

For those who have not been following along, a quick primer on the other parts in the series:

  • Part 1 – VPS Setup
  • Part 2 – nginx/mysql setup
  • Part 3 – WordPress setup & tuning on nginx
  • Part 4 – APC Opcode Cache install and configuration

First off  I must apologise to those who have been waiting a couple of months for Part 5 to be published. I’ve been exceptionally busy these past few months building themes and only got around to finishing this part in the past 2 weeks. Better late than never I hope!

I’ve also spent the past week or two tweaking and tuning my own VPS which actually back fired a bit the past few days with some outages and sub par performance – kind of ironic for a blog with a whole series on High Performance :) Never the less, it was a very worthwhile experiment which was designed to stretch and tune my varnish config to ensure it is as tight as possible on a low end VPS to ensure you get as much bang for your buck as possible.

What the hell is Varnish Cache?

Quite simply, Varnish Cache is the secret weapon that many of the worlds busiest websites use to supercharge their performance (including WordPress.com! and top WordPress hosts WPEngine). Varnish typically sits in front of your actual web server (in our case nginx but it works equally well with Apache too). Technically Varnish is known as a pure reverse proxy HTTP accelerator. It’s main job is to take the pressure off your web server by caching pages in memory on initial request by a user and then serving these pages directly from virtual memory upon further requests by users so the user never reaches your web server at all. Varnish does a much better job at the simple task of serving http requests as it has been designed from the ground up for exactly this purpose – serving lots of requests for the same content super quickly.

And let me tell you – it is very very fast!

Today we’re going to get you up and running with Varnish sitting in front of your existing nginx powered VPS that we’ve been building up in Parts 1-4 of the series. By the time we’re done you will have what I like to call the Rolls Royce of high perfomance WordPress performance configurations :)

Install Varnish

Alright let’s dive in. Step 1 is the install of Varnish itself. To ensure we’re getting the latest and greatest version of Varnish for Ubuntu 10.10 we’ll grab the Varnish version provided by varnish-cache.org directly as follows.

First, ensure you have curl installed if you don’t already:

apt-get install curl

Then let’s get on with the Varnish install

curl http://repo.varnish-cache.org/debian/GPG-key.txt | apt-key add -
echo "deb http://repo.varnish-cache.org/ubuntu/ lucid varnish-3.0" >> /etc/apt/sources.list
apt-get update
apt-get install varnish

As of the time of writing this should get you Varnish 2.1.3 on Ubuntu 10.10. (You can check this by running

varnishd -V
varnishd (varnish-2.1.3 SVN )
Copyright (c) 2006-2009 Linpro AS / Verdens Gang AS

Switch Varnish to Port 80 and nginx to Port 8080

Seeing as we want Varnish to sit in front of nginx we will need to switch Varnish over to port 80 so it intercepts all http requests first. Right now nginx is serving our WordPress website via the standard http port – port 80. As a result, we’ll need to reconfigure nginx to listen on a different port. We’re going to switch nginx to listen on Port 8080 and Varnish will pass requests to it based on the policies with define within Varnish. Thankfully Varnish comes with a very flexible and easy to configure language called VCL. VCL enables you to write policies about how incoming requests should be handled. Let’s switch ports.

By default, Varnish listens on port 6081, we’ll switch to 80. Find this codeblock in:

nano /etc/default/varnish
## Alternative 2, Configuration with VCL
#
# Listen on port 6081, administration on localhost:6082, and forward to
# one content server selected by the vcl file, based on the request.  Use a 1GB
# fixed-size cache file.
#
DAEMON_OPTS="-a :6081 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-s file,/var/lib/varnish/$INSTANCE/varnish_storage.bin,1G"

and replace port 6081 with 80

## Alternative 2, Configuration with VCL
#
# Listen on port 80, administration on localhost:6082, and forward to
# one content server selected by the vcl file, based on the request.  Use a 96M
# fixed-size cache file.
#
DAEMON_OPTS="-a :80 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-s file,/var/lib/varnish/$INSTANCE/varnish_storage.bin,96M"

There is another really important change we made on the last line above. We adjusted the virtual memory allocation for Varnish from 1GB down to 96MB. Why the change? Well I’m assuming that you are running the a low end VPS with maybe 512MB of RAM. If so, you don’t want Varnish consuming too much memory and pushing you into swap file disk thrashing. Keep it low to start with and adjust upwards if necessary. The “varnishstat” command will provide you with all sorts of useful information about how your cache is performing.

The other change you will want to make in this file is to ensure varnishd is set to start at boot

# Should we start varnishd at boot? Set to "yes" to enable.
START=yes

Before starting Varnish, we need to switch nginx to Port 8080. Let’s do that now:

nano /etc/nginx/sites-enabled/engine.ex.conf  (or whatever your config file is called)

In your server block switch the listen port from 80 to 8080.

listen   80; ## listen for ipv4; this line is default and implied

becomes

listen   8080; ## listen for ipv4; this line is default and implied

At this point let’s restart nginx and varnish

service nginx restart
service varnish restart

Now when you run a simple netstat you should see Varnish on Port 80 and nginx on 8080:

netstat -anp --tcp --udp | grep LISTEN

Something like this:

tcp6       0      0 :::80                   :::*                    LISTEN      30464/varnishd
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      30099/nginx

Now it’s time to optimise Varnish to play nice with WordPress!

Optimise your Varnish Config for WordPress

Now it’s time to tune for default VCL to play nice with WordPress. For now let’s go ahead and do that and afterwards we’ll touch on a few key points about this config.

nano /etc/varnish/default.vcl
# This is a basic VCL configuration file for varnish.  See the vcl(7)
# man page for details on VCL syntax and semantics.
#
# Default backend definition.  Set this to point to your content
# server.
#
backend default {
.host = "127.0.0.1";
.port = "8080";
}
acl purge {
"127.0.0.1";
}
sub vcl_recv {
# Add a unique header containing the client address
remove req.http.X-Forwarded-For;
set    req.http.X-Forwarded-For = client.ip;
# Let's make sure we aren't compressing already compressed formats.
if (req.http.Accept-Encoding) {
if (req.url ~ "\.(jpg|png|gif|gz|tgz|bz2|mp3|mp4|m4v)(\?.*|)$") {
remove req.http.Accept-Encoding;
} elsif (req.http.Accept-Encoding ~ "gzip") {
set req.http.Accept-Encoding = "gzip";
} elsif (req.http.Accept-Encoding ~ "deflate") {
set req.http.Accept-Encoding = "deflate";
} else {
remove req.http.Accept-Encoding;
}
}
if (req.request == "PURGE") {
if (!client.ip ~ purge) {
error 405 "Not allowed.";
}
return(lookup);
}
if (req.url ~ "^/$") {
unset req.http.cookie;
}
}
sub vcl_hit {
if (req.request == "PURGE") {
set obj.ttl = 0s;
error 200 "Purged.";
}
}
sub vcl_miss {
if (req.request == "PURGE") {
error 404 "Not in cache.";
}
if (!(req.url ~ "wp-(login|admin)")) {
unset req.http.cookie;
}
if (req.url ~ "^/[^?]+.(jpeg|jpg|png|gif|ico|js|css|txt|gz|zip|lzma|bz2|tgz|tbz|html|htm)(\?.|)$") {
unset req.http.cookie;
set req.url = regsub(req.url, "\?.$", "");
}
if (req.url ~ "^/$") {
unset req.http.cookie;
}
}
sub vcl_fetch {
if (req.url ~ "^/$") {
unset beresp.http.set-cookie;
}
if (!(req.url ~ "wp-(login|admin)")) {
unset beresp.http.set-cookie;
}
}

Ok so what the frick is this all about?

The VCL file above mainly comes from here where it is explained very well exactly what is going on. I’ve made a few minor adjustments over the past 9 or 10 months that I’ve been running it here on themesforge – but it’s working pretty damn well. A few important points to note:

  • By default, Varnish will not cache any requests where cookies are being transmitted. WordPress has quite a lot of cookie action. For most blogs, these are insignificant and we can safely drop these in favour of serving content from Varnish cache rather than directly by the webserver – hence the numerous calls to “unset beresp.http.set-cookie;” above.
  • There are some notable exceptions where we absolutely don’t want to drop cookies, including logins and admin access, hence the exceptions provided by the “if (!(req.url ~ “wp-(login|admin)”)) {” call.
  • Our config will also bust the Varnish cache when a new blog post is published.
  • Another important call is the “set    req.http.X-Forwarded-For = client.ip;” call which ensures that the users IP address is passed to nginx – otherwise your nginx web logs will be full of localhost/127.0.0.1 entries – which are useless to us! This is also the reason that we installed the “nginx-extras” package back in Part 2 so we could avail of the nginx Real IP module which is not enabled by default in the default package (I know crazy!)

Save your config file and give Varnish and nginx one last restart to reload their configs:

service nginx restart
service varnish restart

And with that your VPS is now super charged and ready for bucketloads of traffic!

How do I know if my Varnish config is performing correctly?

Varnish comes with some really useful diagnostics. First, I’m assuming you ran the netstat earlier to ensure Varnish and nginx are on the correct ports right?

Ok, here’s some useful tips for making sure Varnish is actually working.

varnishstat

Varnishstat displays a wealth of information about how Varnish is performing, some key values to look out for:

  • Hitrate Ratio and Hitrate avg: These numbers represent Varnish’s pulse. Right now my ratios are 10, 100, 181 which corresponds to numbers of seconds. Under each of these values, you will see a decimal value – something like  0.9843 – multiply this number by 100 and you have the percentage of your http requests which are being served by Varnish – i.e. cache hits. When you first launch Varnish you can expect your hitrate percentages to be very low but should dramatically increase once you start pointing traffic at your site.
  • Cache Hits – You will want to see this number climbing rapidly as you point traffic to the frontend.
  • Cache Misses – At first launch and as users first request new pages this number will increment.
  • N LRU nuked objects – This number should be zero – if it starts incrementing then it’s time to increase the size of virtual memory assigned to varnish. This number is basically a count of the number of cache objects that had to be removed to make room for new objects.

This is only really scratching the surface of what varnishstat can tell you. You can find out more about varnishstat here.

Other useful varnish commands that I use frequently:

varnishtop -i rxurl – will show you what URLs are beeing asked for by the client

varnishtop -i RxHeader -I Accept-Encoding will show the most popular Accept-Encoding header

Conclusion – what now?

So that’s it fot the High Performance WordPress blog post series for now. If you’ve followed along from the beginning you are now in possession of a finely tuned speed optimised platform for hosting your WordPress websites. That said, the pace of innovation in this space is incredible and constantly changing (for the better). We’ve only really scratched the surface of many highly complex subjects and you should continue to learn about how to tune your own specific server environment. We’ll be coming back to this series later in the year. For now, if you don’t have the time to build out your own servers and would like some assistance we plan on offering a server deployment service in the near future where we roll out finely tuned VPS machines based on your specific needs. Drop me a line if you’re interested.