Neil Middleton

Hosting Kyan.com

It’s now been a week or so since we put the new Kyan.com 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 Kyan.com 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.

Caching

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 Kyan.com 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

Blake
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

Kyan.com design process

Lee Whitelock

It’s great when you get a project you can really sink your teeth into. We pride ourselves on the effort we put into all our projects, of course, but when it’s for your own agency you can really ‘go to town’ and try new things. Our current website was out…

Easy image rollovers

Robin Whittleton

Recently themeforest.net ran a quick tutorial on how to achieve an image slide effect similar to our homepage. I thought I’d go into some more detail about the design decisions we made.

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…

Now residing at 171 High Street, Guildford

Peter Roome

NEW ADDRESS: Kyanmedia, Guildford, 171 High Street, Guildford, Surrey, GU1 3AJ Yes thats right, we have made the big move, a week earlier than the scheduled 24th July. The impromptu decision was made mid morning Friday (17th July, 2009) after discovering, Smithbrook was…

Google+