Technologie und Infrastruktur bei StudiVZ und Xing [revisited]

Update: Hier gibts nun die Aufzeichungen der Vorträge

Heute nachmittag war ich mit einem Kollegen an der Stuttgarter Hochschule der Medien. Dort gab es eine Vortragsreihe zum Thema “Die Langsamen werden verlassen“. Hier waren u.a. einer der StudiVZ Gründer und der VP Operation von Xing anwesend und haben etwas aus dem Nähkästle geplaudert. Ich habe versucht die entscheidenden Punkte mitzuschreiben und will die Fakten ohne viel Schmuck hier präsentieren… ist sicherlich für den ein oder anderen interessant:

XING

\* 8,3 Mio Mitglieder
\* 660.000 davon zahlend
\* nur ein kleiner Teil wird aus Werbeerlösen erwirtschaftet
\* > 300 Server in 2 RZ in Hamburg
\* 200.000 visits/h
\* 2.000.000 PIs/h
\* im Jahr 2009 ca. 10,5 h Downtime
\* 50 Releases im Jahr (jeden Mittwoch Nachmittag): CodeFreeze am Freitag vorher, 2 Tage QS und translation
\* Code in Perl und Rails
\* eigenes FrontEnd Team mit 15 Mann (nur für CSS und JavaScript)
\* ca. 100 Mitarbeiter in Engineering
\* lighttpd wird als Proxy eingesetzt
\* 30-40 AppServer
\* mysql und ganz viel memcached
\* Entwicklung nach Scrum

Es gibt sehr viele Ansätze um die Performace der Seite zu steigern. Zum Beispiel werden Teile der Seite erst beim Scrollen nachgeladen. Dadurch sind die sichtbaren Teile viel schneller verfügbar und es wird sinnlose Bandbreite und Rechenpower gespart. -> Viewport!

Bereits beim Eingeben der Logindaten werden benötigte Infos von den DBs vorgeladen.

StudiVZ

Hier ist man durch das klassische Tal einer schnell wachsenden Plattform gegangen und musste sich zügig über Skalierung Gedanken machen.

\* template engines, eaccelerator, query optimierung kommen zügig an ihre Grenzen
\* sessions werden in Cacheservern gehalten
\* schreibende Operationen wie immer tödlich
\* Partitionierung der Daten als Heilmittel
\* Skalierung in die Breite
\* inzwischen zieht das System User selbstständig zwischen den DBs hin und her. Kein manueller Eingriff nötig!
\* 95% der Daten sind partitioniert, rest repliziert
\* Files werden in Baumstruktur auf Filern (NetApp) gehalten
\* Monitoring mit Nagios
\* apache mit php, nginx für statischen content, mysql
\* HP Hardware mit RedHat
\* deutlich sichtbare Peaks in den Werbepausen von Germany’s next TopModel :)

Die gesamte Vortragsreihe soll auf der Website der HdM in den kommenden Tagen zur Verfügung stehen.

Angaben ohne Gewähr! :)

Tags: , , , ,