Quo Vadis, Twitter?
Was machst du gerade? Mit dieser Frage habe ich Twitter kennengelernt, eines der interessantesten Web 2.0 Startups in den letzten zwei Jahren, wenn nicht gar das Interessanteste. Im Laufe der Zeit hat sich Twitter für mich, von einem einfachen Ich-schreib-mal-zwei-drei-Leuten-was-ich-gerade-mache-Fun-Dienst zu einer der abgefahrensten Kommunikationsplattformen der Neuzeit entwickelt. Mit mittlerweile bald 800 Leuten, die mich auf jedem meiner virtuellen Schritte stalken, ist Twitter für mich zu einem weltumspannenden, multilingualen Chatraum geworden, zu einem gewaltigen Crowdsourcing-Experiment, einem Mirco-Blog und zu einem Ort, an dem man schnell neue Freunde überall auf der Welt finden kann.
Doch wie heißt es so schön: Nichts Gutes ist von Dauer. Schon immer litt Twitter unter gelegentlichen Ausfällen, oder wie depressive Menschen zu sagen pflegen “Downtimes“, doch so schlimm wie in den letzten paar Wochen war es noch nie. Die Erreichbarkeit des Dienstes zu US Stoßzeiten wurde so gering, dass Techcrunch Bloggerkollege Michael Arrington gar titelte “Twitter Suffers Minor Period Of Uptime“, als der Dienst nach stundenlangen Ausfällen endlich mal wieder funktionierte.
Und woran liegt es, dass Twitter zurzeit mit so großen Problemen zu kämpfen hat? Nun, dafür gibt es viele Ursachen. Manch einer mutmaßt, dass es damit zu tun hat, dass Twitter auf Rails basiert, einer Programmiersprache, die es wunderbar ermöglicht, komplizierte Web-Projekte mit vergleichsweise wenigen Zeilen Code in recht kurzer Zeit zu realisieren, die allerdings auch ein wenig tricky sein kann, wenn es ums Skalieren dieser Projekte geht. Arrington hingegen scheint noch ein wenig mehr Insider-Wissen erlangt zu haben, welches ihn gelinde gesagt umgehauen haben muss, und hat vor einigen Tagen bei Techcrunch offen ein paar Fragen an Twitter gerichtet. Diese blieben auch nicht unbeantwortet. Allerdings muss ich sagen, dass es mir nach dem Lesen der Antworten so scheint, als wären die Verantwortlichen bei Twitter in der Politik fast besser aufgehoben… Aber lest selbst:
- Q: Is it true that you only have a single master MySQL server running replication to two slaves, and the architecture doesn’t auto-switch to a hot backup when the master goes down?
- A: We currently use one database for writes with multiple slaves for read queries. As many know, replication of MySQL is no easy task, so we’ve brought in MySQL experts to help us with that immediately. We’ve also ordered new machines and failover infrastructure to handle emergencies.
- Q: Do you really have a grand total of three physical database machines that are POWERING ALL OF TWITTER?
- A: We’ve mitigated much of this issue by using memcached, as many sites do, to minimize our reliance on a database. Our new architecture will move our reliance to a simple, elegant filesystem-based approach, rather than a collection of database. Until then, we are adding replication to handle the current growth and stresses, but we don’t plan on ever relying on a massive number of databases in the future.
- Q: Is it true that the only way you can keep Twitter alive is to have somebody sit there and watch it constantly, and then manually switch databases over and re-build when one of the slaves fail?
- A: There’s a lot of necessary handholding and tweaking of our current system. Nevertheless, we’re growing our operations team to meet ongoing challenges.
- Q: Is that why most of your major outages can be traced to periods of time when former Chief Architect/server watcher Blaine Cook wasn’t there to sit and monitor the system?
- A: There are a number of reasons for our past outages. Everything from faulty process, environment, configuration, and just plain load. Our system must be designed for peaks; currently we’re tightly coupled which means that massive traffic on one part affects all. We’re addressing this by breaking the stack into small lightweight pieces which are designed for failure.
- Q: Given the record-beating outages Twitter saw in May after Cook was dismissed, is anyone there capable of keeping Twitter live?
- A: Of course, this is our work. Our growing team is collectively rolling up our sleeves to build a utility-class system. We’re all focused on designing something that persists and becomes the background.
- Q: How long will it be until you are able to undo the damage Cook has caused to Twitter and the community?
- A: We’re working extremely hard to keep the service stable and performing, as well as architecting a system that stands the test of time. We’d love to be able to tell you exactly how long this will take, but it’s no easy task. It will take time, time well spent.
Ok, besonders gute Politiker würden die Jungs auch nicht abgeben. Dennoch, Twitter versucht es mit mehr Kommunikation und hat einen Status Blog eröffnet, der die User über wichtige Geschehnisse bei Twitter auf dem Laufenden hält. Nun…ok…diese offene Kommunikationspolitik ist sicher keine schlechte Sache, dennoch kann man sich fragen, ob es eine kluge Idee ist, wirklich alles was im Hintergrund so geschieht zu kommunizieren, und vor allem, in welchem Ton…

Ooops. Get well soon! Ok, die Jungs (und Mädels?) bei Twitter haben momentan mit viel zu kämpfen um ihre drei Rechner zusammenzuhalten und die ein zwei Datenbanken nicht auch noch zu verlegen, aber das größte “Problem” ist vermutlich, wie beliebt Twitter geworden ist, denn es werden schließlich nicht weniger User, und damit auch nicht weniger Stress für die Server (außer jemand käme mal auf die schlaue Idee, das Ganze neuzubauen, mit mehr Gedanken an die Skalierbarkeit im Hinterkopf). Somit werden wir wohl noch eine Weile mit “gelegentlichen” Downtimes rechnen müssen. Damit wir Twitter-Suchtis aber nicht völlig unter lebensbeeinflussenden Entzugserscheinungen leiden müssen, gibt es jetzt Twiddict, einen Dienst für alle “Twitter Addicts”.
Wenn Twitter also mal wieder dabei ist, sich von dem ganzen Server-Stress zu erholen, und nichts mehr geht, dann ab zu Twiddict. Dort kann man dann nämlich twittern was immer man der Welt eigentlich via Twitter mitteilen wollte, und diese tweets werden dann dort gespeichert und anschließend automatisch bei Twitter gepostet, sobald der Dienst wieder erreichbar ist. Nette Idee. ^_^ Es könnte allerdings etwas merkwürdig aussehen, wenn man sich in 20 oder mehr gespeicherten Nachrichten auf minutenaktuelle Geschehnisse bezieht, welche dann womöglich erst einen Tag später live sind, und dann gleich alle auf einmal… Außerdem bin ich immer etwas vorsichtig, was 3rd Party Twitter Sites angeht, die mein Passwort wissen wollen. Dafür seid ihr, meine 767 Follower, mir schließlich zu wichtig. Aber the show must go on, und ich bin gespannt was für kreative Twitter-Tool-Sites wir noch sehen werden und - was Twitter selbst angeht - wohin der Weg wohl führt…



























Kommentar hinterlassen