Neil Middleton


It’s now been a week or so since we put the new live and we’ve been getting nothing but rave reviews from everyone who has seen the site. Whilst this is an amazing thing for us to get, it does come with some added side affects, namely the thirty thousand visitors we’ve had from around the globe coming in to see the new site for themselves.

Hosting this sort of thing can usually be a tricky affair as normally a corporate website doesn’t normally receive enough traffic to warrant any high throughput hosting from a cost point of view, but you also don’t want to have the site go down when some high profile twitterers mention your site at peak time.

To the cloud!

So, enter Heroku stage left. We’ve been using Heroku for a few months now, and some of the team have a few years of experience with the platform. Kyan is a Heroku development partner so we thought we should probably eat our own dog food and host our website on what we recommend. Everything you see before you is coming to you from one element or another of cloud hosting. We’re using Heroku for the site itself, S3 for some of the graphical elements, and services such as RedisToGo for some ancillaries such as caching.

Due to the flexibility of the platform we’ve got all sorts of background monitoring and scaling processes running, being able to see more of what’s happening on the site than ever before.

Keeping it fresh

Normally we would resort to using static pages for a site which doesn’t change that much, but is still a fully content managed website using a custom backend. What’s more there is content that is always changing. For instance, in the footer of each and every page we have some statistics about the company. These stats are changing second by second and update on the site regularly. A feature such as this instantly makes static caching less than ideal.

Our main focus with the hosting was to be able to return pages nice and snappily, whilst also being able to scale as far as we may need to without any fuss. This ruled out most standard hosting straight away. Using Heroku allows to scale our resources on-demand, so when floods of traffic come we’re able to deal with them and ensure that users don’t see any issues.


So, how do we ensure we can scale? Well, 90% of the site you see before you is coming from Amazon’s S3 service which is an ideal platform for simple serving static files such as CSS and images up to some massive throughputs (Personally I’ve seen 18,000 requests/second on S3 before). By using Rails 3.1 and the new asset pipeline we’re able to do this automagically, making the development and deployment process as streamlined as possible.

We’re also doing some low-level caching, for instance in the footer. By using a Redis key/value store we’re able to cache the website footer for a few minutes at a time periodically updating on a needs basis. This means that every user isn’t having to wait for the live stats to come through, we’ve already done it before they turn up.

Overall we’ve had a great time using Heroku for and we’ve been able to scale for the response we’ve had without batting an eyelid. What’s more we’ve got a stack of features behind the scenes that we get for free that we may talk about in the future.

Tags: rails, hosting, heroku, kyan

See more posts

Comments: 4

Brian Johnson
commented on

Congrats on the successful launch of your new site, it looks great! And just knowing what goes on behind the scenes is quite astounding. It's obviously a very elaborate, but powerful and flexible system behind the scenes. The cloud is the future!

Amadeo Brands
commented on

Great website I love it!!
How do you keep track of all the meter down below ? :P

Edgar Quintero
commented on

Love your site

commented on

Really cool article. Can you speak more to your deployment process? I'm curious how you do development then push to S3. Thanks.

Add a comment

Note: comments are moderated before publication.

Most Popular

Free Wifi in Guildford

Peter Roome

I was asked by a friend today if I could recommend any bars/restaurants/cafés in Guildford where she could access free WiFi on her laptop. Besides Giraffe I wasn’t aware of anywhere else in town so I posted the question to Yammer in the office and received a number of help…

Writing is hard, so do it

Neil Middleton

Over the last few months I’ve been working on something that I wouldn’t have seen myself doing at any point in my life, and that’s the task of writing a book. I’m not talking about a ‘Janet & John’ novel, or some sort of ‘Fifty Shade…

The Entifyr

Steven Wake

The Entifyr is a small web application that started life as an personal experiment to automate the removal of problem characters from client supplied content (usually Microsoft Word documents). The offending characters are replaced with corresponding entities (hence the name) al…

We're hiring! Join our team, see all of our latest jobs.