

# Leistungseffizienz
<a name="performance-efficiency"></a>

Die Säule der Leistungseffizienz betrifft die Fähigkeit zur effizienten Nutzung von Cloud-Ressourcen, um die Leistungsanforderungen zu erfüllen, sowie die Möglichkeit zur Aufrechterhaltung dieser Effizienz bei Nachfrageänderungen und einer Weiterentwicklung der Technologien.

 Die Säule „Leistungsexzellenz“ gibt einen Überblick über konzeptionelle Grundsätze, bewährte Methoden und Fragen. Verbindliche Anleitungen zur Implementierung finden Sie im [Whitepaper „Säule der Leistungseffizienz“](https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/welcome.html?ref=wellarchitected-wp). 

**Topics**
+ [Designprinzipien](perf-dp.md)
+ [Definition](perf-def.md)
+ [Bewährte Methoden](perf-bp.md)
+ [Ressourcen](perf-resources.md)

# Designprinzipien
<a name="perf-dp"></a>

 Es gibt fünf Gestaltungsprinzipien für die Leistungseffizienz in der Cloud: 
+  **Demokratisieren fortschrittlicher Technologien:** Vereinfachen Sie die Implementierung fortschrittlicher Technologien für Ihr Team, indem Sie komplexe Aufgaben an Ihren Cloud-Anbieter delegieren. Statt Ihr IT-Team aufzufordern, sich näher über das Hosten und Ausführen einer neuen Technologie zu informieren, sollten Sie die Technologie als Service nutzen. Zum Beispiel sind keine SQL Datenbanken, Medientranscodierung und maschinelles Lernen alles Technologien, für die spezielles Fachwissen erforderlich ist. In der Cloud kann Ihr Team diese Technologien als Service nutzen und sich auf die Produktentwicklung konzentrieren, ohne sich um die Bereitstellung und Verwaltung von Ressourcen kümmern zu müssen. 
+  **Werden Sie innerhalb weniger Minuten global**: Durch die Bereitstellung Ihrer Workloads in mehreren AWS Regionen auf der ganzen Welt können Sie Ihren Kunden bei minimalen Kosten eine geringere Latenz und ein besseres Erlebnis bieten. 
+  **Nutzung von Serverless-Architekturen:** Aufgrund der in der Cloud verwendeten Serverless-Architekturen brauchen Sie für herkömmliche Datenverarbeitungsaktivitäten keine physischen Server mehr auszuführen und zu verwalten. Serverless-Speicherservices können beispielsweise als statische Websites genutzt werden, wodurch sich Webserver erübrigen. Ihren Code können Sie von Ereignisservices hosten lassen. Auf diese Weise entfällt nicht nur die Verwaltung physischer Server, sondern auch die Transaktionskosten sinken, da verwaltete Services in der Cloud-Umgebung ausgeführt werden. 
+  **Vermehrtes Experimentieren:** Mit virtuellen und automatisierbaren Ressourcen können Sie schnell unterschiedliche Konfigurationen, Instance- oder Speichertypen miteinander vergleichen. 
+  **Berücksichtigen des technischen Verständnisses:** Befassen Sie sich mit der Verwendungsweise von Cloud-Services und nutzen Sie stets den Technologieansatz, der für Ihre Workload-Ziele geeignet ist. Berücksichtigen Sie bei der Auswahl des passenden Datenbank- oder Speicherkonzepts beispielsweise die Datenzugriffsmuster. 

# Definition
<a name="perf-def"></a>

 Es gibt fünf bewährte Methoden für die Leistungseffizienz in der Cloud: 
+  **Auswahl der Architektur** 
+  **Computer und Hardware** 
+  **Datenverwaltung** 
+  **Netzwerk und Bereitstellung von Inhalten** 
+  **Prozess und Kultur** 

 Um eine leistungsstarke Architektur sicherzustellen, empfiehlt sich für deren Entwicklung ein datenbasierter Ansatz. Sammeln Sie zu allen Aspekten der Architektur Daten, angefangen vom allgemeinen Design bis hin zur Auswahl und Konfiguration der Ressourcentypen. 

 Wenn Sie Ihre Optionen regelmäßig überprüfen, wird bestätigt, dass Sie die Vorteile der sich ständig weiterentwickelnden AWS Cloud nutzen. Durch Überwachung erkennen Sie Abweichungen von der erwarteten Leistung. Zur Leistungssteigerung der Architektur können Sie auch Kompromisse eingehen, beispielsweise durch Komprimierung oder Caching, oder indem Sie hinsichtlich der Konsistenz mehr Toleranz einräumen. 

# Bewährte Methoden
<a name="perf-bp"></a>

**Topics**
+ [Auswahl der Architektur](perf-arch.md)
+ [Computer und Hardware](perf-compute.md)
+ [Datenverwaltung](perf-data.md)
+ [Netzwerk und Bereitstellung von Inhalten](perf-networking.md)
+ [Prozess und Kultur](perf-process.md)

# Auswahl der Architektur
<a name="perf-arch"></a>

 Die optimale Lösung für eine bestimmte Workload variiert und Lösungen sind häufig eine Kombination mehrerer Ansätze. Well-Architected-Workloads nutzen mehrere Lösungen und ermöglichen verschiedene Funktionen zur Verbesserung der Leistung. 

 AWS Ressourcen sind in vielen Typen und Konfigurationen verfügbar, was es einfacher macht, einen Ansatz zu finden, der Ihren Bedürfnissen am besten entspricht. Sie können zudem Optionen nutzen, die sich in Ihrer On-Premises-Infrastruktur nicht ohne Weiteres umsetzen ließen. Ein verwalteter Service wie Amazon DynamoDB bietet beispielsweise eine vollständig verwaltete SQL Nein-Datenbank mit einer Latenz im einstelligen Millisekundenbereich in jeder Größenordnung. 

 In der folgenden Frage geht es um Überlegungen zur Leistungseffizienz. (Eine Liste der Fragen und bewährten Methoden zur Leistungseffizienz finden Sie im [Anhang](a-performance-efficiency.md).). 


| PERF1: Wie wählen Sie geeignete Cloud-Ressourcen und Architekturmuster für Ihren Workload aus? | 
| --- | 
|  Oft sind mehrere Ansätze erforderlich, um eine effektivere Leistung für eine Workload zu erzielen. Well-Architected-Systeme nutzen mehrere Lösungen und Funktionen zur Verbesserung der Leistung.  | 

# Computer und Hardware
<a name="perf-compute"></a>

 Die optimale Datenverarbeitungsoption für eine bestimmte Workload kann sich je nach Anwendungsdesign, Nutzungsmustern und Konfigurationseinstellungen unterscheiden. Architekturen können verschiedene Datenverarbeitungsoptionen für verschiedene Komponenten verwenden und verschiedene Funktionen zur Verbesserung der Leistung bieten. Die Wahl der falschen Datenverarbeitungslösung für eine Architektur kann die Leistungseffizienz schmälern. 

 In AWS, Compute ist in drei Formen verfügbar: Instanzen, Container und Funktionen: 
+  **Instanzen** sind virtualisierte Server, die es Ihnen ermöglichen, ihre Funktionen mit einer Taste oder einem API Aufruf zu ändern. Da Ressourcenentscheidungen in der Cloud flexibel sind, können Sie mit verschiedenen Servertypen experimentieren. Bei AWS diesen virtuellen Serverinstanzen gibt es verschiedene Familien und Größen und sie bieten eine Vielzahl von Funktionen, darunter Solid-State-Laufwerke (SSDs) und Grafikprozessoren (). GPUs 
+  **Container** sind eine Methode der Betriebssystemvirtualisierung, mit der Sie eine Anwendung und ihre Abhängigkeiten in ressourcenisolierten Prozessen ausführen können. AWS Fargate ist serverloses Computing für Container oder Amazon EC2 kann verwendet werden, wenn Sie Kontrolle über die Installation, Konfiguration und Verwaltung Ihrer Rechenumgebung benötigen. Sie können auch aus mehreren Plattformen für die Container-Orchestrierung wählen: Amazon Elastic Container Service (ECS) oder Amazon Elastic Kubernetes Service (). EKS 
+  **Funktionen** abstrahieren die Ausführungsumgebung vom anzuwendenden Code. AWS Lambda Ermöglicht es Ihnen beispielsweise, Code auszuführen, ohne eine Instance auszuführen. 

 In der folgenden Frage geht es um Überlegungen zur Leistungseffizienz. 


| PERF2: Wie wählen und verwenden Sie Rechenressourcen in Ihrem Workload? | 
| --- | 
| Welche Datenverarbeitungslösung für eine Workload effizienter ist, ist vom Anwendungsdesign sowie von Nutzungsmustern und Konfigurationseinstellungen abhängig. Architekturen können unterschiedliche Datenverarbeitungslösungen für verschiedene Komponenten verwenden und unterschiedliche Funktionen zur Leistungsverbesserung bieten. Die Wahl der falschen Datenverarbeitungslösung für eine Architektur kann die Leistungseffizienz schmälern. | 

# Datenverwaltung
<a name="perf-data"></a>

 Die optimale Datenverwaltungslösung für ein bestimmtes System hängt von der Art des Datentyps (Block, Datei oder Objekt), den Zugriffsmustern (zufällig oder sequentiell), dem erforderlichen Durchsatz, der Häufigkeit des Zugriffs (online, offline, archiviert), der Aktualisierungshäufigkeit (WORMdynamisch) sowie von Verfügbarkeits- und Haltbarkeitsbeschränkungen ab. Well-Architected-Workloads verwenden zweckgebundene Datenspeicher, die verschiedene Features zur Verbesserung der Leistung ermöglichen. 

 AWS In ist Speicher in drei Formen verfügbar: Objekt, Block und Datei: 
+  **Objektspeicher** bietet eine skalierbare, robuste Plattform, damit Daten überall im Internet zugänglich sind. Das gilt für benutzergenerierte Inhalte, aktive Archive, Serverless-Datenverarbeitung, Big Data-Speicher oder die Sicherung und Wiederherstellung. Amazon Simple Storage Service (Amazon S3) ist ein Objektspeicherservice, der branchenführende Skalierbarkeit, Datenverfügbarkeit, Sicherheit und Leistung bietet. Amazon S3 ist auf eine Verfügbarkeit von 99,999999999 % ausgelegt und speichert Daten für Millionen von Anwendungen für Unternehmen weltweit. 
+  **Blockspeicher** bietet hochverfügbaren, konsistenten Blockspeicher mit niedriger Latenz für jeden virtuellen Host und entspricht direkt angeschlossenem Speicher (DAS) oder einem Storage Area Network (). SAN Amazon Elastic Block Store (AmazonEBS) wurde für Workloads entwickelt, die persistenten Speicher benötigen, auf den EC2 Instances zugreifen können, sodass Sie Anwendungen mit der richtigen Speicherkapazität, Leistung und den richtigen Kosten optimieren können. 
+  **Dateispeicher** bietet auf mehreren Systemen Zugriff auf ein gemeinsam genutztes Dateisystem. Dateispeicherlösungen wie Amazon Elastic File System (AmazonEFS) eignen sich ideal für Anwendungsfälle wie große Inhaltsrepositorys, Entwicklungsumgebungen, Medienspeicher oder Benutzerverzeichnisse. Amazon FSx macht es effizient und kostengünstig, beliebte Dateisysteme zu starten und auszuführen, sodass Sie die umfangreichen Funktionen und die schnelle Leistung weit verbreiteter Open-Source-Dateisysteme und kommerziell lizenzierter Dateisysteme nutzen können. 

 In der folgenden Frage geht es um Überlegungen zur Leistungseffizienz. 


| PERF3: Wie speichern, verwalten und greifen Sie auf Daten in Ihrem Workload zu? | 
| --- | 
|  Die effizientere Speicherlösung für ein System hängt von der Art des Zugriffsvorgangs (Block, Datei oder Objekt), den Zugriffsmustern (zufällig oder sequentiell), dem erforderlichen Durchsatz, der Zugriffshäufigkeit (online, offline, Archivierung), der Aktualisierungshäufigkeit (WORMdynamisch) sowie von Verfügbarkeits- und Haltbarkeitsbeschränkungen ab. Gut geplante Systeme nutzen mehrere Speicherlösungen und bieten unterschiedliche Möglichkeiten zur Leistungsoptimierung und effizienten Ressourcennutzung.  | 

# Netzwerk und Bereitstellung von Inhalten
<a name="perf-networking"></a>

 Welche Netzwerklösung für eine Workload optimal ist, richtet sich nach der Latenz, dem erforderlichen Durchsatz, dem Jitter und der Bandbreite. Die Standortoptionen sind von den physischen Einschränkungen abhängig, z. B. von Benutzer- oder On-Premises-Ressourcen. Diese Einschränkungen können durch Edge-Standorte oder die Ressourcenplatzierung wettgemacht werden. 

 On AWS ist das Netzwerk virtualisiert und in einer Reihe verschiedener Typen und Konfigurationen verfügbar. Dies macht es einfacher, Ihren Netzwerkanforderungen gerecht zu werden. AWS bietet Produktfunktionen (z. B. Enhanced Networking, Amazon EC2 Networking Optimized Instances, Amazon S3 Transfer Acceleration und Dynamic Amazon CloudFront) zur Optimierung des Netzwerkverkehrs. AWS bietet auch Netzwerkfunktionen (z. B. Amazon Route 53-Latenz-Routing, VPC Amazon-Endpunkte und AWS Global Accelerator) AWS Direct Connect, um Netzwerkdistanz oder Jitter zu reduzieren. 

 In der folgenden Frage geht es um Überlegungen zur Leistungseffizienz. 


| PERF4: Wie wählen und konfigurieren Sie Netzwerkressourcen in Ihrem Workload? | 
| --- | 
|  In dieser Frage werden Anleitungen und bewährte Methoden für die Entwicklung, Konfiguration und den Betrieb effizienter Netzwerk und Inhaltsbereitstellungslösungen in der Cloud bereitgestellt.  | 

# Prozess und Kultur
<a name="perf-process"></a>

 Bei der Architektur von Workloads gibt es Prinzipien und Methoden, die Sie übernehmen können, um effiziente und leistungsstarke Cloud-Workloads besser zu betreiben. Um eine Kultur zu schaffen, die die Leistungseffizienz von Cloud-Workloads fördert, sollten Sie diese Schlüsselprinzipien und -methoden berücksichtigen. 

 Beachten Sie beim Aufbau dieser Kultur die folgenden Schlüsselprinzipien: 
+  **Infrastruktur als Code:** Definieren Sie Ihre Infrastruktur als Code mithilfe von Ansätzen wie AWS CloudFormation Vorlagen. Mit Vorlagen können Sie Ihre Infrastruktur zusammen mit Ihrem Anwendungscode und Ihren Konfigurationen per Quellcodeüberwachung verwalten. Dies ermöglicht es Ihnen, dieselben Methoden wie bei der Softwareentwicklung auch auf Ihre Infrastruktur anzuwenden, um von einer schnellen Iteration zu profitieren. 
+  **Bereitstellungspipeline:** Nutzen Sie zur Bereitstellung der Infrastruktur eine CI/CD-Pipeline (Continuous Integration/Continuous Deployment) wie etwa ein Quellcode-Repository, Build-Systeme sowie automatisierte Bereitstellungs- und Testverfahren. Dies lässt eine reproduzierbare, konsistente und kostengünstige Iteration zu. 
+  **Klar definierte Metriken:** Richten Sie Metriken ein und überwachen Sie sie, um wichtige Leistungsindikatoren zu erfassen (KPIs). Wir empfehlen die Verwendung technischer und geschäftlicher Metriken. Bei Websites oder mobilen Apps sind Erfassung time-to-first-byte oder Rendern die wichtigsten Kennzahlen. Zu den weiteren allgemein anwendbaren Metriken zählen die Thread-Anzahl, die Garbage Collection-Rate sowie Wartezustände. Anhand von geschäftlichen Metriken wie den aggregierten kumulativen Kosten pro Anforderung können Sie Möglichkeiten zur Kostensenkung ermitteln. Erwägen Sie sorgfältig, wie Metriken interpretiert werden sollen. Sie können beispielsweise anstelle von Durchschnittswerten Maximalwerte oder das 99. Perzentil wählen. 
+  **Automatische Leistungstests:** Sorgen Sie im Rahmen der Bereitstellung dafür, dass nach dem erfolgreichen Absolvieren der schnelleren Ausführungstests automatisch Leistungstests initiiert werden. Durch die Automatisierung sollte eine neue Umgebung mit entsprechenden Anfangsbedingungen, z. B. Testdaten, entstehen, in der anschließend einige Benchmark- und Lasttests ausgeführt werden. Die Ergebnisse dieser Tests sollten mit dem Build in Verbindung gebracht werden, um Leistungsänderungen verfolgen zu können. Für langwierige Tests können Sie diesen Teil der Pipeline gegenüber dem restlichen Build asynchron ausführen. Alternativ können Sie über Nacht Leistungstests mit Amazon EC2 Spot-Instances durchführen. 
+  **Lastgenerierung:** Erstellen Sie eine Reihe von Testskripts zum Replizieren synthetischer oder vorab aufgezeichneter Benutzerreisen. Diese Skripts sollten idempotent und nicht gekoppelt sein. Um gültige Ergebnisse zu erzielen, sind möglicherweise zusätzliche *vorbereitende* Skripts erforderlich. Die Testskripts sollten das Nutzungsverhalten in der Produktion möglichst authentisch replizieren. Sie können Software oder software-as-a-service (SaaS-) Lösungen verwenden, um die Last zu generieren. Erwägen Sie die Verwendung von [AWS Marketplace](https://aws.amazon.com/marketplace/)-Lösungen und [Spot Instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html). Dies können kostengünstige Ansätze zum Generieren der Last sein. 
+  **Leistungstransparenz:** Wichtige Metriken sollten für das ganze Team sichtbar sein. Dies gilt insbesondere für die Metriken der einzelnen Build-Versionen. Damit lassen sich wichtige positive oder negative Trends erkennen. Wichtig sind auch Metriken zur Anzahl der Fehler oder Ausnahmen, um sicherzustellen, dass das System funktioniert. 
+ **Visualisierung:** Nutzen Sie Visualisierungstechniken, mit denen Leistungsprobleme, Hotspots, Wartezustände oder niedrige Auslastungen klar aufgezeigt werden. Zeigen Sie Leistungsmetriken in Architekturdiagrammen an. Aufrufgrafiken oder Code können die Problemerkennung beschleunigen. 
+  **Regelmäßiger Prüfungsprozess:** Wenn Architekturen eine schlechte Leistung aufweisen, liegt dies normalerweise daran, dass ein Prozess zu Überprüfung der Leistung fehlt oder fehlerhaft ist. Falls Sie derartige Probleme mit Ihrer Architektur haben, können Sie jederzeit ein Leistungsprüfverfahren implementieren und somit iterative Verbesserungen fördern. 
+  **Fortlaufende Optimierung:** Schaffen Sie eine Kultur fortlaufender Optimierung der Leistungseffizienz Ihrer Cloud-Workload. 

 In der folgenden Frage geht es um Überlegungen zur Leistungseffizienz. 


| PERF5: Welchen Prozess verwenden Sie, um die Leistungseffizienz Ihres Workloads zu erhöhen?  | 
| --- | 
|  Bei der Architektur von Workloads gibt es Prinzipien und Methoden, die Sie übernehmen können, um effiziente und leistungsstarke Cloud-Workloads besser zu betreiben. Um eine Kultur zu schaffen, die die Leistungseffizienz von Cloud-Workloads fördert, sollten Sie diese Schlüsselprinzipien und -methoden berücksichtigen.  | 

# Ressourcen
<a name="perf-resources"></a>

 Weitere Informationen zu bewährten Methoden für die Leistungseffizienz finden Sie in den folgenden Ressourcen. 

## Dokumentation
<a name="perf-doc"></a>
+  [Leistungsoptimierung mit Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/PerformanceOptimization.html?ref=wellarchitected-wp) 
+  [Leistung von Amazon EBS Volume](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSPerformance.html?ref=wellarchitected-wp) 

## Whitepaper
<a name="perf-wp"></a>
+  [Säule der Leistungseffizienz](https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/welcome.html?ref=wellarchitected-wp) 

## Video
<a name="perf-video"></a>
+  [AWS re:Invent 2019: EC2 Amazon-Stiftungen (-R2) CMP211](https://www.youtube.com/watch?v=kMMybKqC2Y0&ref=wellarchitected-wp) 
+  [AWS re:Invent 2019: Sitzung für Führungskräfte: Der Zustand der Speicherbranche (01-L) STG2](https://www.youtube.com/watch?v=39vAsGi6eEI&ref=wellarchitected-wp) 
+  [AWS re:Invent 2019: Sitzung für Führungskräfte: speziell entwickelte Datenbanken (09-L AWS ) DAT2](https://www.youtube.com/watch?v=q81TVuV5u28&ref=wellarchitected-wp) 
+  [AWS re:Invent 2019: Konnektivität zu und hybride Netzwerkarchitekturen (-R1) AWSAWS NET317](https://www.youtube.com/watch?v=eqW6CPb58gs&ref=wellarchitected-wp) 
+  [AWS re:Invent 2019: Unterstützung für Amazon der nächsten GenerationEC2: Tiefer Einblick in das Nitro-System (03-R2) CMP3](https://www.youtube.com/watch?v=rUY-00yFlE4&ref=wellarchitected-wp) 
+  [AWS re:Invent 2019: Skalierung bis zu Ihren ersten 10 Millionen Benutzern (-R) ARC211](https://www.youtube.com/watch?v=kKjm4ehYiMs&ref=wellarchitected-wp) 