How twitter works

Posted on December 16, 2010 in Tutorials



The data in this post goes back to June 2009 aka almost 6 months

I have been long amazed by twitter architecture as a coder – so i was digging around on technical details on how it works and the size of their infrastructure and such.

I tweeted the links I found – now @vipwoody asked again if i still have the info – so i thought about sharing in post as a self-documentation and for the rest who could be interested.

Reference 1 :

Presentation of Evan Weaver, Lead Engineer in the Services Team at Twitter

Improving Running Components at Twitter

View more presentations from Evan Weaver.
In case you are wondering – this is Evan -  cool dude :)
  • Most of the tools used by Twitter are open source.
  • Everything is kept in RAM and the database is just a backup.
  • The stack is made up of Rails for the front side, C, Scala and Java for the middle business layer, and MySQL for storing data
  • The front end mostly glues together several client services, many written in C: MySQL client, Memcached client, a JSON one, and others.
  • The middleware uses Memcached, Varnish for page caching, Kestrel, a MQ written in Scala, and a Comet server is in the works, also written in Scala and used for clients that want to track a large number of tweets.
Here are also some pictures of the new Twitter offices : http://abduzeedo.com/new-twitter-office-headquarter

0 Comments

Trackbacks/Pingbacks

  1. Tweets that mention How twitter works | Mireille Raad -- Topsy.com - [...] This post was mentioned on Twitter by Micheline Hazou, Mireille Raad. Mireille Raad said: new post as per @vipwoody ...
  2. Twitter, geo-location “censorship”, how to bypass it and why you should not participate in #twitterBlackout | Mireille Raad - [...] Occupy or Egypt or Revolution – the amount of tweets can bring up the fail whale despite the genius ...

Leave a Comment

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>