zur Homepage
Computerwoche, 18/2005
IT-Architektur für E-Commerce-Riesen: Ebay
Von Jörg Auf dem Hövel
Riesige Datenbestände, Millionen von Seitenaufrufen, kurze
Antwortzeiten: Drei der erfolgreichsten Internet-Unternehmen Amazon,
Ebay und Google sind auf die unbedingte Performance und
Ausfallsicherheit ihrer IT-Systeme angewiesen. Geht es um ihre
IT-Architektur, hüllen sich die Unternehmen in Schweigen. Die
Eckpfeiler lassen sich gleichwohl orten. Eine dreiteilige Artikelserie
der computerwoche beleuchtet, mit welchen IT-Strategien die Gewinner
des Internet-Booms das enorme Wachstum der vergangenen Jahre
meisterten.
Ebay Deutschland, Dreilinden bei Berlin
Den Anfang macht das Internet-Auktionshaus Ebay. Dessen Zahlen
sind beeindruckend: Weltweit stehen ständig etwa 44 Millionen Artikel
zum Verkauf, etwa vier Millionen Artikel werden jeden Tag neu
eingestellt. Zu Spitzenzeiten verzeichnen die Seiten am Tag 889
Millionen Aufrufe, 270 Millionen Suchanfragen und 15 Millionen Gebote.
Pro Sekunde werden dabei Datenmengen von bis zu 12 Gigabit versandt.
Zum Vergleich: Am deutschen Knotenpunkt des Internets, dem DeCIX in
Frankfurt am Main, laufen im Durchschnitt 20 Gbit pro Sekunde, in
Spitzenzeiten bis 30 Gbit/s, zwischen den verschiedenen Teilnetzen hin
und her. Für Ebay ist die Koordination dieser Daten und die ständige
Erreichbarkeit der Web-Seiten überlebenswichtig, die technische
Architektur muss dementsprechend solide sein.
Die Datenbank der Online-Auktionsplattform ist auf drei
Standorte in den USA verteilt. Zwei der vier Datenzentren stehen in
Santa Clara, eines in Sacramento und ein weiteres in Denver. Alle
weltweiten Anfragen an die Datenbank landen an einem dieser vier Orte.
Jedes Data Center beherbergt rund 50 Sun-Server. Schon die Kapazität
eines Orts reicht aus, um das Auktionsgeschäft am Laufen zu halten -
sieht man von den leistungshungrigen Suchanfragen der Nutzer ab. Die
Datenzentren spiegeln ihre Informationen untereinander jedoch nicht,
sondern dienen der Lastverteilung.
Die wichtige Basis von Ebay ist hauptsächlich auf Hardware von
Sun und dessen Betriebssystem Solaris implementiert. Ein Blick auf die
Kosten lässt die Dimensionen des "Projekts Ebay" erahnen: Die
"V880"-Server von Sun kosten mit Anschaffung und Support um die 100000
Euro pro Stück, die ebenfalls bei Ebay eingesetzten "V480"er um die
50000 Euro. Um den Benutzern das schnelle Suchen und Finden von
Produkten zu ermöglichen, stellt die Firma zudem rund 130 Server
anderer Hersteller mit insgesamt 1100 CPUs zu Verfügung. Dazu kommen
weitere 280 Server für den E-Mail-Verkehr zwischen Ebay und Kunden. War
früher die Zuverlässigkeit der Hardware das Problem, ist heute das
Zusammenspiel der komplexen Computerstruktur die Kunst.
Gestern: monolithische Struktur
Seit einigen Totalausfällen vor etwa sechs Jahren hat Ebay die
Systemarchitektur komplett überarbeitet. Im Juni 1999 war die Seite für
22 Stunden nicht erreichbar. Selbst der damals schon massive
Hardwareeinsatz konnte das schnelle Wachstum der Seite nicht abfedern.
Das Grundproblem lag in der monolithischen Struktur: Eine einzige
Applikation beherbergte alle Funktionen von Ebay, alle Transaktionen
auf der Seite trafen auf eine gigantische Datenbank. Fiel das System
aus, begann stets eine zeitaufwändige Fehlersuche.
Für die Probleme, die das alte, proprietäre, schwer wartbare
und schlecht skalierbare System bereitete, suchte Ebay die Lösung in
einer lose gekoppelten, schichtweise und modular aufgebauten Struktur,
die auf offenen Standards basiert. Ohne es so zu nennen, entwickelte
Ebay mit der neuen Gesamtarchitektur ein Beispiel für Grid Computing:
Aufgaben werden an verschiedene CPUs verteilt, die sogar an
unterschiedlichen Orten stehen können.
Die Architektur, an der Ebay bis heute arbeitet, sieht
folgendermaßen aus: Da der Ausfall eines Servers nicht die gesamte Site
zum Einsturz bringen darf, werden die Datensätze und Aufgaben auf
verschiedene Maschinen verteilt. So entstand eines der größten Storage
Area Networks der Welt, ein Netz aus Festplatten, das, über Glasfaser
verbunden, effizient zu steuern, enorm schnell ansprechbar und vor
allem gegen Ausfälle gefeit ist.
Auch die Software wurde komplett ausgetauscht. Lief Ebay früher
komplett unter dem Internet Information Services (IIS) von Microsoft,
baut die Architektur heute größtenteils auf einer J2EE-Basis auf. Die
Enterprise Edition der Java 2 Platform stellt einen allgemein
akzeptierten Rahmen zur Verfügung, um mit modularen Komponenten
verteilte, mehrschichtige Anwendungen zu entwickeln. Ein weiterer
Vorteil: Die Anwendungen sind auf verschiedenen Servern lauffähig.
Arbeitsaufwändig wird dafür der gesamte Code der Ebay-Web-Seite von C++
in die plattformunabhängige Programmiersprache Java umgeschrieben.
Mittlerweile sind 80 Prozent der Seite neu programmiert.
Heute: dreischichtige Architektur
Der Java-Code läuft auf dem "Websphere Application Server" von
IBM. Die J2EE-Architektur erlaubt es, die Anwendungen in mehrere
Schichten zu unterteilen: die Präsentationsschicht, die Geschäftslogik
und die Datenhaltung. In J2EE-Anwendungen sind verschiedene Komponenten
für diese Aufgaben zuständig. Die Präsentationskomponenten, die die
Web-Seiten erzeugen, werden als "Java-Servlets" oder "JSP-Seiten"
bezeichnet, die Geschäftskomponenten als "Session-Beans" und die
Datenhaltungskomponenten als "Persistence-Beans". Letztere verwendet
Ebay allerdings nicht, sondern setzt ein eigenes Framework ein, um mit
der Datenbank zu kommunizieren. Die allgemeine Implementierung dieser
Schicht in J2EE beziehungsweise Websphere würde den Anforderungen von
über 800 Millionen Anfragen am Tag nicht standhalten.
Insgesamt ergibt sich somit ein dreiteiliger Aufbau der
IT-Architektur: eine Oracle-Datenbank auf Sun, die mit der
J2EE-Websphere-Middleware kommuniziert, welche wiederum das
IIS-Frontend bedient. Die weltweiten Nutzer bekommen von diesem
Zusammenspiel nur die vom IIS gelieferten Web-Seiten zu sehen.
Ebay lässt keine Informationen aus dem sensiblen Bereich des
IT-Aufbaus nach außen dringen; zu oft haben Hacker schon versucht, die
Web-Seite zu manipulieren oder den Zugriff mit
Denial-of-Service-Attacken zu verhindern. Dass Ebay in den Jahren
zwischen 2000 und 2002 immer wieder einmal für Stunden nicht zu
erreichen war, lag aber nicht an Angriffen von außen, sondern an dem
ungünstigen Systemaufbau, der die immer größeren Datenmengen nicht
bewältigen konnte.
Experimente mit Linux-Servern
Seit dem Umbau hat die Seite hier keine nennenswerten Probleme
mehr, wohl aber woanders. Nicht nur, dass über einfaches Javascript
lange Zeit ein Passwortklau möglich war, auch die Betrugsfälle haben
sich gemehrt: Nach wie vor besteht Ebay nicht auf der korrekten
Identifizierung seiner Nutzer, Identitätsdiebstähle führen zu illegalen
Auktionen. Unbekannte ersteigerten so beispielsweise im Namen des
Bundestagsabgeordneten Uwe Göllner ein Solarium im Wert von 30000 Euro.
Nahezu alle Länderseiten laufen weiterhin auf Microsofts IIS in
der Version 6.0. Dass Ebay trotz der notorischen Unsicherheit des
Web-Servers weiterhin IIS nutzt, stößt in Sicherheitskreisen auf
Unverständnis. Nicht nur deshalb experimentiert das Auktionshaus auch
auf AMD-basierenden Sun-Servern mit einer Linux-Variante.
Statische Inhalte lagern lokal
Deutschland ist nach den USA der wichtigste Umschlagplatz für
Ebay. Rund die Hälfte des internationalen Umsatzes von 759 Millionen
Dollar wird hierzulande erzielt. Waren es 2000 noch 1,1 Millionen
registrierte Nutzer, sind heute mehr als 16 Millionen Deutsche bei Ebay
eingetragen.
Bei einem Aufruf einer regionalen Ebay-Seite wird nur ein sehr
kleiner Teil der Anfrage an eines der Datencenter in den USA
weitergeleitet. Der Großteil der angeforderten Seite wird von einem
Server in der Nähe des Nutzers bereitgestellt. Ebay hat bei dem
Hosting-Dienstleister Akamai, der in 65 Ländern über 14000 Server
betreibt, reichlich Volumen angemietet. Hier liegt unter anderem auch
der statische Inhalt der Ebay-Website. Logos, andere Bilder und der
HTML-Code müssen somit nicht aus den USA in die Welt verschickt werden.
So landen nur rund fünf Prozent einer Anfrage überhaupt in den USA, der
große Rest kommt jeweils aus den 28 Ländern, in denen der Konzern eine
eigene Domain angemeldet hat. So lädt sich die Ebay-Web-Seite in
Frankreich, Deutschland oder auf den Philippinen genauso schnell wie in
den USA.
Die stete Erreichbarkeit der Seiten lässt Ebay von gleich zwei
Unternehmen kontrollieren. Die Firma Gomez überprüft die Performanz
beim Heimanwender, indem sie auf die Ebay-Seiten von über 50 Orten in
aller Welt aus zugreift, während Keynote an den großen Backbones im
Internet kontrolliert, wie schnell und sicher die großen
Internet-Service-Provider in der Lage sind, Daten auszuliefern.
Zusätzlich betreibt Ebay selbst ein internes System, das in mehr als 40
auf dem Globus verteilten Städten die Zugriffs-Fehlerraten überprüft
und zugleich Hacker-Angriffe registriert.
Eine immer wichtigere Rolle spielen die Powerseller, die über
Ebay ihren Lebensunterhalt erwirtschaften. Weltweit sollen dies an die
450 000 Menschen sein. Sie sind vom Funktionieren der Ebay-Site genauso
abhängig wie der Konzern selbst. In Zukunft wird Ebay diesen
Powersellern mehr Einblick in die hauseigene Datenbank geben. Jeder von
ihnen soll dann in der Lage sein, mittels Analyse-Tools seine Geschäfte
zu verbessern.