Caching for Kiln performance improvement
June 10th, 2011 by Dan Ostlund
“Sluggish” might be a good word for a lazy summer weekend. It might be an apt description for a snail who really, really wants to get to that next blade of grass. In a web app it’s the kiss of death.
I have to apologize to my StackExchange friends because Google fed me an Answers.com link to my question about how long people are willing to wait for a web page to respond. It authoritatively said people won’t wait “more than 30-40 seconds” which concretely proves that this answer hasn’t been updated since 1996. More recent studies say something along the lines of “2-3 seconds” before people start to wander off looking for a reliable technology like a papyrus page listing the price of wheat in Mesopotamia. If it’s a business app, they don’t even have that option; they have to wait as their blood pressure slowly increases and your credibility takes a swan dive off a cliff.
Kiln’s not sluggish, but as it grows we face interesting problems and are constantly seeking ways to keep performance snappy. More people means more load, which means more time to process requests, and throwing hardware at the problem only works some of the time. The Kiln team recently instituted an entirely new caching scheme for keeping performance fast and blood pressures low. And so far it’s been working like a champ.

