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 un­ver- ä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