Möglicherweise haben Sie gerade jetzt ein Webprojekt auf der Zielgeraden und beschäftigen sich mit der Frage, welchem Dienstleister Sie Ihre Anwendung zum Hosting übergeben sollen. Bewerber dafür - also Hosting-Unternehmen - gibt es in großer Zahl. Sie haben die Qual der Wahl.
Neun Fragen sollten Sie Ihrem Hoster stellen und ihn nur dann beauftragen, wenn er Ihnen zufriedenstellende Antworten geben kann.
Frage 1: Welche Sicherheitseinrichtungen sind im Einsatz?
Alle Systeme müssen sich hinter einer Firewall befinden, diese wiederum selbstverständlich als redundanter Cluster ausgelegt sein. Zugriff darf nur über sichere und verschlüsselte Zugänge wie IPSec oder SSL-VPN möglich sein. Ein System zur Einbruchserkennung (Intrusion Detection System, IDS) muss außerdem ständig präsent sein. Ein- und ausgehende Daten werden gefiltert und von der Firewall überwacht, dabei Angriffe blockiert.
Die virtuellen Systeme der verschiedenen Kunden beziehungsweise Projekte müssen mindestens durch getrennte virtuelle Netzwerke (VLANs) voneinander abgeschottet sein, besser noch die einzelnen Virtual Machines auf Hypervisor-Ebene. Hierdurch wird verhindert, dass ein angegriffenes System weitere Systeme gefährdet.
Werden Ihre Daten verlässlich geschützt?
Frage 2: Wie sieht die Kompetenz beim Thema Performance aus?
Spätestens hier wird gerne starke Hardware genannt, und das ist auch vollkommen korrekt. Aber: schnell ist nicht gleich schnell. Auf den ersten Blick können mehr Prozessoren mit mehr Kernen auch mehr Arbeit erledigen. Bedenken Sie jedoch, dass es viele Anwendungen im Web gibt, die kein Multithreading zulassen. Das heißt, dass sich dieser Vorgang auf die Geschwindigkeit eines einzigen Prozessorkernes reduziert. Plötzlich wird es wichtig, mit welcher Taktfrequenz der Prozessor betrieben wird, nicht mehr welche Anzahl an Cores und CPUs existieren.
Auch die Komplexität der Software kann das System lähmen und auch die schnellste Hardware an ihre Belastungsgrenzen treiben. Abhängig vom sogenannten Shop-Template, das die Ausgabe der Seiten steuert, können in Einzelfällen auch schon einmal mehrere hundert Anfragen an den Datenbankserver gesendet werden, bis eine Seite aufgebaut ist.
An dieser Stelle hilft Hardware nicht weiter, sondern Ihr Dienstleister muss Ihnen aufzählen können, welche Änderungen für einen schnelleren beziehungsweise effektiveren Ablauf des Ladevorganges sinnvoll sind. Es gibt hier eine ganze Reihe von Tricks und Kniffen - diese müssen allerdings auch bekannt sein. Das Template selbst hat hier einen großen Einfluss auf die Performance. Siehe nächstes Kapitel.
Ist Ihr Dienstleister in der Lage, solche Details Ihrer Anwendung zu verstehen und Sie entsprechend zu beraten?
Frage 3: Wie gut versteht der Dienstleister Caching?
Caching ist ein wesentliches Thema, wenn es um Performance geht. Fragen Sie nach Details. Unterschiedliche Anwendungen erfordern eine unterschiedliche Caching-Strategie. Beispielsweise lässt sich die Seitenauslieferung durch einen Full-Page-Cache deutlich beschleunigen. Andererseits sind gerade die Startseiten eines Webshops gefüllt mit Inhalten, die zur Echtzeit aus der Datenbank gezogen werden. Ein gut konfigurierter Cache erhält vom Template genaue Informationen darüber, welche Inhalte cache-bar sind. Diese werden dann auch vorgehalten.
Ein hilfreicher Berater kann die Hit-Rate des Caches analysieren und Ihnen auf dieser Basis Empfehlungen für das Template machen. Sie erkennen, wie eng das Zusammenwirken von Template und Cache ist.
Besitzt Ihr Dienstleister die Kompetenz, hier das Optimum herauszukitzeln?
Anwendungen mit einer großen Zahl an gleichzeitigen Nutzern laufen nur mit einem durchdachten Cluster-Design wirklich schnell. Caching kann auch mehr Performance herausholen, zum Beispiel mit SSD-Cache für häufig abgefragte Inhalte, und der gezielten Nutzung von RAM-Disk.
Nutzt Ihr Anbieter dieses Instrumentarium?
Frage 4: Wie sieht die Backup-Strategie aus?
Ihr Dienstleister muss mehrfach redundante Systeme anbieten. Nicht nur ist das Gesamtsystem gegen Ausfälle gesichert, sondern es muss auch - sollte es doch zu einem Ausfall kommen - schnell wieder hergestellt sein. Ein Backup-System, das weitgehend automatisiert und in regelmäßigen Intervallen einen Snapshot der Anwendung macht, auf Basis dessen diese nach einem Ausfall in einem stabilen Zustand zurückversetzt werden kann - das imagebasierte Backup - gehört ebenfalls zum Standard. Die Backup-Strategie muss zudem den Shared-Storage abdecken.
Ein Backup muss außerdem mehrstufig sein: Es spielt eine große Rolle, dass die Daten an unterschiedlichen Orten liegen und dass einer dieser Orte außerhalb des Rechenzentrums ist, ein sogenanntes Offsite-Backup. Dies stellt sicher, dass im Extremfall das ganze Rechenzentrum in einer Erdspalte versinken kann, es aber immer noch eine aktuelle Kopie der Daten gibt. Dabei ist wichtig, wie lange die gespiegelten Daten vorgehalten werden.
Eine Instant-Restore-Funktion muss schließlich sicherstellen, dass eine kompromittierte Virtual Machine innerhalb kürzester Zeit wieder angefahren werden kann. Fünfzehn Minuten sind hier das Maximum.
Setzt Ihr Anbieter diese Methoden ein?
Weitere Artikel des Autors:
Frage 5: Wie darf man Aussagen über Hardwaredimensionierung verstehen?
Die Virtualisierung der Hosting-Welt bringt auch Versuchungen mit sich. Da Ressourcen wie Rechenkerne oder RAM-Speicher nicht mehr notwendigerweise tatsächlich vorliegen, sondern aus einem großen Server-Cluster zugewiesen werden, fällt es leicht, virtuell mehr Ressourcen zu vergeben, als in Summe tatsächlich vorhanden sind. Man nennt dies 'Overcommitment'.
Lässt sich Ihr Dienstleister hierbei in die Karten sehen? Oder besser noch: Gibt er Ihnen das Versprechen, kein Overcommitment zu betreiben?
Servicelevel werden landläufig über den Grad der Verfügbarkeit definiert und nicht durch die eingesetzte Hardware. Wenn nun die Anforderungen steigen, beispielsweise durch einen Anstieg der Kundenzahlen, dann steigt damit auch die Auslastung der Server. Zur Aufrechterhaltung der Erreichbarkeit muss die Hardware erweitert werden - und dafür ein klarer Schwellenwert der Auslastung existieren, bei dessen Überschreitung automatisch die notwendige Hardware hinzugefügt wird.
Physikalische Ressourcen wie CPU und RAM müssen per Hot-Plug erweitert werden können. Vorausschauendes Beobachten, Monitoring genannt, hilft dabei, den richtigen Zeitpunkt für solcherlei Maßnahmen vorab zu kennen.
Welche Zusagen gibt Ihnen Ihr Hoster diesbezüglich?
Frage 6: Welche Servicelevel werden zugesichert?
Ihr Dienstleister muss Ihnen genau sagen können, welche Verfügbarkeit er garantiert, welche Reaktionszeiten er einhält und wie lange es dauert, bis ein System wieder hergestellt ist. Üblicherweise werden Ihnen verschiedene Servicelevel angeboten: zu welcher nachtschlafenden Zeit darf Ihre Webanwendung ausfallen und wird dennoch garantiert nach soundso vielen Stunden wieder zu laufen? Das ist der Standard.
Stellt Ihr Anbieter sein Programm transparent dar? Lässt er sich auf garantierte Zusagen ein?
Frage 7: Inwieweit kann Ihr System mit den Anforderungen wachsen (Skalierbarkeit)?
Es sollte gegeben sein, dass jedes virtuelle Einzelsystem auf eine spätere physikalische Trennung hin ausgelegt ist. Dies gilt nicht nur für die Web- und Datenbankserver, sondern auch für Loadbalancer, Caching-Server und die Intelligente Suche.
Idealerweise können virtuelle Maschinen geklont werden und sind so angepasst, dass ein neuer Webserver innerhalb von 20 Minuten 'up and running' ist - im Idealfall geschieht das automatisiert. Für Lastspitzen, beispielsweise nach Fernsehwerbung oder saisonale Veränderungen (schönes Wetter), müssen zusätzliche Server automatisch dazu geschaltet und später auch wieder abgehängt werden können.
Spielt Ihr Anbieter da mit?
Frage 8: Welche Qualifikation besitzt das Personal?
Es wurde vorhin schon erwähnt: Ihr Anbieter muss Ihre Web-Anwendung verstehen. Er muss abschätzen können, welche Rolle zum Beispiel die Artikel- oder Kategorien-Anzahl in einem Shopsystem spielen, welche Conversion Rate zu erwarten ist und wie sich diese auf die Anzahl der Datenbankaufrufe auswirkt. So muss von Anfang an eine Vorstellung darüber existieren, wie Ihr System dimensioniert zu werden hat.
Im Idealfall haben Sie den Hoster bereits im Projekt-Team integriert, wenn die Anwendung gerade entwickelt wird. Dann nämlich verfügen Sie auch über dessen Expertise beim Tuning der Anwendung und der Datenbanken. Dies bringt bares Geld: Untersuchungen bestätigen immer wieder, dass jede Sekunde, die eine Seite zum Laden benötigt, mit einer um ca. 10 Prozent schlechteren Conversion Rate einhergeht.
Verfügt Ihr Anbieter über dieses Know-How?
Frage 9: Wie flexibel sind Sie?
Ein Vertrag schafft Sicherheit für beide Seiten. Nun ändert sich etwas, beispielsweise Ihre Anforderungen gehen zurück. Ihr Dienstleister sollte Ihnen eine Option anbieten, Verträge bei Bedarf zurückzufahren.
Welche Flexibilität bei den Verträgen bietet man Ihnen an?
Ihr Dienstleister sollte Sie im Idealfall vor sich anbahnenden Problemen aus freien Stücken warnen. Er muss bereit sein, sein Wissen mit Ihnen und zu Ihrem Nutzen zu teilen. Und zuletzt: Sie sollten einen definierten Ansprechpartner haben, der Ihr System auch kennt.
Noch einmal zum Abschluss: Hält der Anbieter, der Sie gerade gerne als Kunde gewinnen möchte, diesen Fragen Stand?
Wenn Sie jetzt mitgezählt haben, stellen Sie fest: Es sind keine neun Fragen, wie versprochen - sondern einundzwanzig. Aber Sie können beruhigt sein: die gehen aufs Haus. (bw)
Weitere Artikel des Autors: