The Doppler Quarterly (DEUTSCHE) Winter 2016 | Page 23
ander kommunizieren, senken die gesamte Anwendungsleistung, da sie in der
Regel über ein Netzwerk oder das offene Internet verteilt sind, wo Toleranz für
hohe Latenz erwünscht ist.
Konzentrieren Sie sich auf das Design von Anwendungen, die die Kommunika-
tion zwischen Anwendungskomponenten optimieren. Kombinieren Sie bei-
spielsweise die Kommunikation in einem einzigen Datenstrom oder einer
Nachrichtengruppe, statt dass laufend kommuniziert wird, als ob die Anwen-
dungskomponenten sich auf einer einzigen Plattform befinden.
4) Erstellen Sie Modelle und Designs für hohe Leistung und
Skalierbarkeit.
Beziehen Sie bei Ihren Überlegungen rund um die Kommunikation von Anwen-
dungskomponenten auch die Gesamtleistung mit ein. Dazu müssen Sie sich
u. a. ein Bild davon machen, wie sich die Anwendung bei steigender Belastung
skalieren lässt.
Leistungsbewusstes Design bedeutet, dass zunächst
ein Modell erstellt wird, das zeigt, wie sich die Anwen-
dung unter zunehmender Belastung verhält.
Wenn sich 1.000 oder mehr Benutzer gleichzeitig anmelden, wie verarbeitet
die Anwendung den gestiegenen Datenverkehr im Netzwerk, die höhere Belas-
tung der Anwendungsserver und die Last der Back-End-Datenbanken? Sie
müssen verstehen, wie die Anwendungskomponenten die Belastung handha-
ben, wenn sich die Zahl der Benutzer auf 1.000 oder mehr erhöht.
Bei diesem Beispiel könnte die Last für die Anwendungsserver um 80 Prozent,
des Netzwerks um 10 Prozent und der Datenbank um 40 Prozent ansteigen.
Angesichts dessen werden 1.000 zusätzliche Benutzer mit hoher Wahrschein-
lichkeit die bereitgestellten Anwendungsserver auslasten und Sie müssen mehr
Anwendungsserverinstanzen einrichten. Die Netzwerkkapazität könnte unver-
ändert bleiben, doch die Anzahl der Datenbankinstanzen muss möglicherweise
gesteigert werden, damit sich zusätzliche Belastungen verarbeitet lassen.
Unter Einsatz dieses Modells können Sie herausfinden, wie die Anwendung
durch automatische Einrichtung der benötigten Ressourceninstanzen am bes-
ten skaliert wird. In manchen Fällen bieten Cloud-Service-Provider Autosca-
ling-Funktionen für die automatische Bereitstellung an. Am effizientesten ist
es jedoch, sich ein Bild des Workloadprofils der Anwendung zu machen und
den Weg zur Anwendungsskalierung zu definieren, sowie Mechanismen einzu-
richten, die sicherstellen, dass die Skalierung tatsächlich erfolgt.
Überwachen Sie schließlich die allgemeine Anwendungsleistung mithilfe von
anwendungssensiblen Performance-Monitoring-Tools und erstellen Sie
Schnittstellen in der Anwendung, damit eine bessere Leistungsverfolgung
möglich wird. Wie die Anwendung Ressourcen bereitstellt und entfernt, sollte
integriert sein.
5) Machen Sie die Sicherheit zu einem systemischen Bestand-
teil der Anwendung.
Für die meisten Menschen, die Anwendungen erstellen, ist die Sicherheit nor-
malerweise ein nachgelagerter Aspekt. Wird eine Anwendung aber in der Cloud
gehostet, sollte die Sicherheit hohe Priorität haben. Ihre cloudbasierte Anwen-
dungsarchitektur muss die Sicherheit zu einem systemischen Bestandteil der
WINTER 2016 | THE DOPPLER | 21