Zum Hauptinhalt Zur Navigation

Social Media: So viel Open-Source-Software setzt Twitter ein

Dass Twitter Open-Source-Software benutzt und selbst entwickelt, ist kein Geheimnis. Wie viel quelloffene Technik der Nachrichtendienst einsetzt und wo, hat der Leiter der Open-Source-Abteilung Chris Aniszczyk jetzt verraten.
/ Jörg Thoma
7 Kommentare News folgen (öffnet im neuen Fenster)
Twitter setzt viel Open-Source-Software ein. (Bild: Twitter)
Twitter setzt viel Open-Source-Software ein. Bild: Twitter

In einem Interview mit Opensource.com(öffnet im neuen Fenster) hat Twitter-Mitarbeiter Chris Aniszczyk Details dazu verraten, wie viel Open-Source-Software der Nachrichtendienst einsetzt, um die täglich etwa 400 Millionen Tweets zu versenden. Twitter nutze quelloffene Software vor allem deswegen, weil sie sich schnell an neue Anforderungen anpassen lässt. Twitter gebe Weiterentwicklungen aber nicht nur an die diversen Projekte zurück, sondern fördere sie auch finanziell.

Vor allem bedient sich Twitter bei Apache-Projekten. So kommt das in Java geschriebene Hadoop-Framework zum Einsatz, das verteilt arbeitende Software verwaltet. Insbesondere von Mapreduce macht Twitter intensiven Gebrauch. Mapreduce stammt von Google und ist für die gleichzeitige Berechnung großer Datenmengen gedacht. Twitter nutzt auch Pig für die Mapreduce-Steuerung. Pig ist ebenfalls eine Komponente des Hadoop-Frameworks.

Memcached und ein eigenes MySQL

Außerdem hat Twitter Memcached weiterentwickelt und setzt es unter dem Namen Twemcache(öffnet im neuen Fenster) ein, um den Datenverkehr zwischenspeichern zu können. Der Nachrichtendienst hat den Quellcode seiner Version des Cache-Servers für Datenbankdaten freigegeben.

Als Datenbank kommt ein eigener Fork von MySQL(öffnet im neuen Fenster) zum Einsatz, der ebenfalls quelloffen weiterentwickelt wird. Auch hier geht der von Twitter veränderte Code in das Originalprojekt zurück.

Quelloffene Eigenentwicklungen

Twitter entwickele auch eigens Open-Source-Software, sagte Aniszczyk. Mit Lago(öffnet im neuen Fenster) testet Twitter seine eigenen Dienste auf Belastung, bevor sie produktiv eingesetzt werden. Zipkin(öffnet im neuen Fenster) ist ein verteiltes Tracing-System, das Zeitdaten der diversen Dienste sammelt, die eingesetzt werden, um eine Anfrage an die Twitter-API zu verwalten. Außerdem entwickelt Twitter Scalding(öffnet im neuen Fenster) , eine auf Scala basierende Bibliothek, mit der Mapreduce-Aufträge erstellt werden können.

Eckpfeiler Mesos

Seine Anwendungen erstellt Twitter mit Hilfe von Mesos(öffnet im neuen Fenster) , das speziell für verteilte Applikationen entwickelt wurde und ebenfalls Teil des Apache-Projekts ist. Aniszczyk nennt Mesos einen wichtigen Eckpfeiler der gesamten Twitter-Technik.

Aniszczyk wird eine Keynote zu dem gleichen Thema auf der diesjährigen Linuxcon in San Diego(öffnet im neuen Fenster) , Kalifornien, halten. Die Konferenz findet vom 29. bis zum 31. August 2012 statt.

Im Februar 2010 startete Twitter eine Webseite , auf der das Unternehmen seine Open-Source-Projekte vor- und zur Verfügung stellt. Der Sourcecode steht auf dem Github-Server(öffnet im neuen Fenster) des Unternehmens zum Download bereit.


Relevante Themen