Freigeben über


WordPress in App Service

Azure Front Door
Azure-Lastenausgleich
Azure Virtual Network
Azure App Service
Azure Database for MySQL

In diesem Artikel wird eine Lösung für kleine bis mittlere WordPress-Installationen beschrieben. Die Lösung bietet die Skalierbarkeit, Zuverlässigkeit und Sicherheit der Azure-Plattform, ohne eine komplexe Konfiguration oder Verwaltung zu erfordern. Lösungen für größere oder speicherintensive Installationen finden Sie unter WordPress-Hostingoptionen in Azure.

Aufbau

Architekturdiagramm von WordPress in Azure App Service. Azure Front Door leitet Datenverkehr an Web-Apps weiter. Azure Database for MySQL speichert dynamische Inhalte.

Laden Sie eine Visio-Datei dieser Architektur herunter.

Hinweis

Sie können diese Lösung erweitern, indem Sie Tipps und Empfehlungen umsetzen, die nicht spezifisch für eine bestimmte WordPress-Hostingmethode sind. Allgemeine Tipps zum Bereitstellen einer WordPress-Installation finden Sie unter WordPress in Azure.

Datenfluss

Dieses Szenario umfasst eine skalierbare WordPress-Installation, die in Azure App Service ausgeführt wird.

  • Benutzer*innen greifen über Azure Front Door auf die Front-End-Website zu, wobei Azure Web Application Firewall aktiviert ist.
  • Azure Front Door verteilt Anforderungen auf die App Service Web-Apps, in denen WordPress ausgeführt wird. Azure Front Door ruft alle Daten ab, die nicht von den WordPress-Web-Apps zwischengespeichert werden.
  • Die WordPress-Anwendung verwendet einen Dienstendpunkt, um auf eine flexible Serverinstanz von Azure Database for MySQL zuzugreifen. Die WordPress-Anwendung ruft dynamische Informationen aus der Datenbank ab.
  • Lokal redundante Hochverfügbarkeit ist für Azure Database for MySQL über einen Standbyserver in derselben Verfügbarkeitszone aktiviert.
  • Alle statischen Inhalte werden in Azure Blob Storage gehostet.

Komponenten

  • App Service ist eine Plattform als Dienst (PaaS), die ein Framework zum Erstellen, Bereitstellen und Skalieren von Web-Apps bietet. In dieser Architektur hosten App Service die WordPress-Anwendung.

  • Azure Database for MySQL – Flexibler Server ist ein verwalteter relationaler Datenbankdienst, der auf dem Open-Source-MySQL-Datenbankmodul basiert. In dieser Architektur speichert die Datenbankoption WordPress-Daten.

  • Azure DDoS Protection ist ein Netzwerksicherheitsdienst, der erweiterte DDoS-Entschärfungsfunktionen bereitstellt. In dieser Architektur schützt DDoS Protection vor DDoS-Angriffen gegen die öffentliche IP-Adresse.

  • Azure Front Door ist ein modernes Netzwerk für die Bereitstellung von Cloudinhalten und ein globaler Lastenausgleich. In dieser Architektur ist Azure Front Door der Einstiegspunkt der Anwendung für Webbenutzer.

  • Azure Virtual Network ist ein Netzwerkdienst, der eine Möglichkeit für die Bereitstellung von Ressourcen zur Kommunikation mit einander, dem Internet und lokalen Netzwerken bietet. In dieser Lösung sind Azure App Service- und Back-End-Komponenten nur über private Verbindungen im virtuellen Netzwerk erreichbar.

  • Blob Storage ist ein skalierbarer, optimierter Objektspeicherdienst. In dieser Architektur hoste Blob Storage alle statischen Inhalte für die WordPress-Anwendung.

  • Netzwerksicherheitsgruppen (Network Security Groups, NSGs) sind Sicherheitsfeatures, die eine Liste der Sicherheitsregeln verwenden, um eingehenden oder ausgehenden Netzwerkdatenverkehr basierend auf Quell- oder Ziel-IP-Adresse, Port und Protokoll zuzulassen oder zu verweigern. In dieser Architektur schränken NSG-Regeln den Datenverkehrsfluss zwischen den Anwendungskomponenten in den Subnetzen ein.

  • Die Vorlage "WordPress on App Service " ist eine Vorlage für verwaltete Lösungen zum Hosten von WordPress in App Service. In dieser Architektur stellt die Vorlage eine vorkonfigurierte WordPress-Bereitstellung bereit, die App Service und die anderen in diesem Abschnitt beschriebenen Azure-Dienste enthält.

Alternativen

  • Sie können Azure Managed Redis verwenden, um einen Schlüsselwertcache für WordPress-Plug-Ins zur Leistungsoptimierung zu hosten. Der Cache kann zwischen den App Service-Web-Apps freigegeben werden.
  • Anstelle von Azure Front Door können Sie Content Delivery Network verwenden, um Webinhalte für Benutzer*innen bereitzustellen.

Szenariodetails

Dieses Beispielszenario eignet sich für kleine bis mittlere WordPress-Installationen.

Mögliche Anwendungsfälle

  • Medienereignisse, die einen Anstieg des Datenverkehrsaufkommens verursachen
  • Blogs, die WordPress als Content-Management-System nutzen
  • Unternehmens- oder E-Commerce-Websites, die WordPress verwenden
  • Websites, die mit anderen Content-Management-Systemen erstellt werden

Überlegungen

Diese Überlegungen bilden die Säulen des Azure Well-Architected Framework, einer Reihe von Leitprinzipien, die Sie zur Verbesserung der Qualität eines Workloads verwenden können. Weitere Informationen finden Sie unter Well-Architected Framework.

Zuverlässigkeit

Zuverlässigkeit trägt dazu bei, dass Ihre Anwendung die Verpflichtungen erfüllen kann, die Sie für Ihre Kunden vornehmen. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Zuverlässigkeit.

Berücksichtigen Sie die folgenden Empfehlungen, wenn Sie diese Lösung bereitstellen:

  • App Service bietet integrierten Lastenausgleich und integrierte Integritätsprüfungen. Mit diesen Features können Sie die Verfügbarkeit aufrechterhalten, wenn eine App Service-Web-App ausfällt.
  • Die Verwendung eines Content Delivery Network zum Zwischenspeichern aller Antworten bietet einen kleinen Vorteil bei der Verfügbarkeit. Insbesondere wenn der Ursprung nicht antwortet, können Sie immer noch auf Inhalte zugreifen. Das Zwischenspeichern stellt jedoch keine vollständige Verfügbarkeitslösung dar.
  • Sie können Blob Storage in eine gepaarte Region replizieren, um Datenredundanz über mehrere Regionen hinweg zu erreichen. Weitere Informationen finden Sie unter Azure Storage-Redundanz.
  • Um die Verfügbarkeit von Azure Database for MySQL zu erhöhen, ermöglichen Sie Hochverfügbarkeit in derselben Zone. Dieses Feature erstellt einen Standbyserver in derselben Verfügbarkeitszone, in der sich der primäre Server befindet. Sie müssen die Computeebene „Universell“ oder „Unternehmenskritisch“ verwenden, um Hochverfügbarkeit in derselben Zone zu ermöglichen. Weitere Informationen finden Sie unter den Hochverfügbarkeitsoptionen, die für Ihre Anforderungen gelten.

Sicherheit

Sicherheit bietet Sicherheitsmaßnahmen gegen bewusste Angriffe und den Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Sicherheit.

Berücksichtigen Sie die folgenden Empfehlungen, wenn Sie diese Lösung bereitstellen:

  • Verwenden Sie Azure Web Application Firewall in Azure Front Door, um den Datenverkehr virtueller Netzwerke zu schützen, der in die Front-End-Anwendungsebene fließt. Weitere Informationen finden Sie unter Azure Web Application Firewall in Azure Front Door.
  • Lassen Sie nicht zu, dass ausgehender Internetdatenverkehr von der Datenbankebene fließt.
  • Lassen Sie keinen öffentlichen Zugriff auf privaten Speicher zu.

Weitere Informationen zur WordPress-Sicherheit finden Sie in den Allgemeinen Sicherheits- und Leistungstipps für WordPress und in der Azure-Sicherheitsdokumentation.

Kostenoptimierung

Die Kostenoptimierung konzentriert sich auf Möglichkeiten, unnötige Ausgaben zu reduzieren und die betriebliche Effizienz zu verbessern. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Kostenoptimierung.

Machen Sie sich mit den folgenden Kostenüberlegungen vertraut, wenn Sie diese Lösung bereitstellen:

  • Datenverkehrserwartungen (GB/Monat). Ihr Datenverkehrsvolumen hat die größten Auswirkungen auf Ihre Kosten. Die Menge an Datenverkehr, die Sie erhalten, bestimmt die Anzahl der benötigten App Service-Instanzen und den Preis für die ausgehende Datenübertragung. Das Datenverkehrsvolumen korreliert auch direkt mit der Datenmenge, die von Ihrem Content Delivery Network bereitgestellt wird, wobei die Kosten für die ausgehende Datenübertragung günstiger sind.
  • Menge gehosteter Daten. Es ist wichtig, die Datenmenge zu berücksichtigen, die Sie in Blob Storage hosten. Die Speicherpreise basieren auf der verbrauchten Kapazität.
  • Prozentsatz an Schreibvorgängen. Überlegen Sie, wie viele neue Daten Sie auf Ihre Website schreiben und in Azure Storage hosten. Bestimmen Sie, ob die neuen Daten benötigt werden. Bei Bereitstellungen in mehreren Regionen korreliert die Menge neuer Daten, die Sie auf Ihre Website schreiben, mit der Datenmenge, die in Ihren Regionen gespiegelt wird.
  • Statische und dynamische Inhalte im Vergleich. Überwachen Sie die Leistung und Kapazität Ihres Datenbankspeichers, um festzustellen, ob eine günstigere SKU Ihre Website unterstützen kann. In der Datenbank werden dynamische Inhalte gespeichert, und das Content Delivery Network speichert statische Inhalte zwischen.
  • App Service-Optimierung. Allgemeine Tipps zum Optimieren der App Service-Kosten finden Sie unter Azure App Service und Kostenoptimierung.

Leistungseffizienz

Die Leistungseffizienz bezieht sich auf die Fähigkeit Ihrer Workload, die Anforderungen der Benutzer effizient zu erfüllen. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Leistungseffizienz.

In diesem Szenario wird das WordPress-Front-End in App Service gehostet. Sie sollten die Autoskalierungsfunktion aktivieren, um die Anzahl der App Service-Instanzen automatisch zu skalieren. Durch Festlegen eines Triggers für die Autoskalierung können Sie auf Kundenanforderungen reagieren. Sie können auch einen Trigger festlegen, der auf einem definierten Zeitplan basiert. Weitere Informationen finden Sie unter "Erste Schritte mit autoscale" in Azure.

Beitragende

Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:

Hauptautor:

Andere Mitwirkende:

  • Adrian Calinescu | Senior Cloud Solution Architect

Melden Sie sich bei LinkedIn an, um nicht öffentliche LinkedIn-Profile anzuzeigen.

Nächste Schritte

Produktdokumentation:

Microsoft-Trainingsmodule: