Twitter, an Evolving Architecture. The most detailed write-up of Twitter’s current architecture I’ve seen, explaining the four layers of cache (all memcached) used by the Twitter API.
Twitter, an Evolving Architecture. The most detailed write-up of Twitter’s current architecture I’ve seen, explaining the four layers of cache (all memcached) used by the Twitter API.
Unfortunately, as soon as something like this is presented/published/summarized, it's already out of date. We did away with our API page cache after @eweaver did some calculations and found that it wasn't doing us much good (low hit rate, higher cache pressure). So, "evolving" is the key lesson here.
The piece also mentions a pending "Comet" system, which is already in production as the technology behind our Streaming API. It's not Comet in the traditional sense, as there's no back-and-forth conversation between client and server after the initial connection is established. That's why we built something custom instead of using one of the many off-the-shelf Comet servers designed for lots of connections sharing small bits of data. We needed something for relatively few connections pushing tons of data in one direction.
In a few months, who knows what things will look like. But for now, this write-up is a snapshot of our system performing far better than it has in the past, thanks to lots of hard work on the part of our Service Team.