Ein Anfängerleitfaden für Serverless Computing mit WordPress
Veröffentlicht: 2019-06-16Serverless Computing zu verstehen kann verwirrend genug sein. Die Entscheidung, ob dies eine gute Entwicklungslösung für Sie ist oder nicht, wird noch komplizierter, da viele Vor- und Nachteile zu berücksichtigen sind.
In diesem Artikel werden wir die Grundlagen des serverlosen Computings für WordPress-Entwickler aufschlüsseln. Dann besprechen wir einige der Faktoren, die Sie berücksichtigen sollten, wenn Sie entscheiden, ob diese Technologie für Sie geeignet ist.
Lass uns einspringen!
Eine Einführung in Serverless Computing für WordPress-Benutzer
Serverless Computing kann zunächst schwierig zu verstehen sein, insbesondere weil der Name irreführend ist. Dies impliziert zwar, dass Sie möglicherweise eine Website oder Anwendung ohne Server entwickeln können, dies ist jedoch nicht der Fall.
Stattdessen bedeutet der Begriff „serverlos“, dass die Einrichtung und Wartung der für die Entwicklung Ihres Projekts erforderlichen Server einem Cloud-Dienstleister überlassen wird. Dies gibt Ihnen als Entwickler mehr Zeit, sich auf die Erstellung Ihrer Website oder Anwendung zu konzentrieren.
Der Cloud-Dienstleister wickelt alle Ihre Backend-Prozesse auf Pay-per-Use-Basis ab. In der Zwischenzeit basiert Ihre Website oder Anwendung auf einer hochskalierbaren Architektur. Um all dies noch etwas weiter aufzuschlüsseln, besteht Serverless Computing aus drei Hauptfunktionen:
- Cloud-basierte Server, die vollständig von Cloud-Dienstleistern verwaltet werden, manchmal auch als „Anbieter“ bezeichnet. Der Entwickler muss keine Serverwartung durchführen oder sich um die zugrunde liegende Infrastruktur seines Projekts kümmern.
- Kosten, die durch die Nutzung bestimmt werden, und nicht durch vorausbezahlten Speicher, den Sie möglicherweise nicht in vollem Umfang nutzen können. Beim serverlosen Computing zahlen Sie nur für die Ausführung der Funktionen Ihrer Site oder App, die automatisch je nach Ausführung des Codes skaliert werden.
- Eine Architektur, die eine Website oder Anwendung in einzelne Funktionen zerlegt. Dies wird auch als Function as a Service (FaaS) bezeichnet, bei dem Code als Reaktion auf bestimmte Ereignisse ausgeführt wird.
In vielen Situationen bietet dies Entwicklern die Möglichkeit, ihre Projekte schneller zum Laufen zu bringen, da sie sich nicht um die Serverwartung kümmern müssen. Es reduziert auch die Kosten und erhöht gleichzeitig die Skalierbarkeit und in einigen Fällen die Geschwindigkeit. Allerdings ist serverlose Technologie nicht für jedes Projekt geeignet.
So entscheiden Sie, ob Serverless Computing das Richtige für Sie ist (5 Schlüsselfaktoren)
Wenn Sie entscheiden möchten, ob serverloses Computing eine gute Wahl für Ihr nächstes Projekt ist oder nicht, müssen Sie mehrere Überlegungen berücksichtigen. Obwohl diese Methode zur Entwicklung von Websites und Anwendungen viele Vorteile bieten kann, hängt sie von den spezifischen Eigenschaften Ihres Projekts ab. Lassen Sie uns genauer untersuchen, was das bedeutet.
1. Berücksichtigen Sie die Größe Ihres Projekts und seine potenzielle Latenz
Zunächst einmal ist Serverless Computing am erfolgreichsten, wenn es zum Erstellen statischer Websites oder einfacher Anwendungen verwendet wird. Statische Dateien und eine kleine Anzahl einfacher Funktionen sind für eine serverlose Architektur einfach für Endbenutzer bereitzustellen.
Sehr große dynamische Sites und Anwendungen mit viel komplexeren Funktionen werden jedoch nicht unbedingt so gut abschneiden. Bei größeren Projekten ist die Laufzeit Ihres Codes wahrscheinlich länger, was sich negativ auf die Geschwindigkeit Ihres Projekts und die Ausführungskosten auswirken kann.
Eine damit verbundene Überlegung ist die Häufigkeit, mit der jede der Funktionen, aus denen Ihre Website oder Anwendung besteht, verwendet wird. Wenn eine Funktion in einer serverlosen Architektur längere Zeit nicht aufgerufen wurde, wird ihr Code nicht ständig ausgeführt. Ruft ein Benutzer eine selten nachgefragte Funktion auf, ist ein „Kaltstart“ erforderlich. Dies führt zu Latenzen und kann sich auf Ihre User Experience (UX) auswirken, da es eine Weile dauern wird, bis der Code wieder „aufgewärmt“ ist.
2. Entscheiden Sie, wie viel Zeit Sie für die Wartung aufwenden können
Einer der Hauptvorteile der serverlosen Umstellung ist die Zeitersparnis, die Sie sparen können. Sie müssen beispielsweise nicht die Infrastruktur erstellen, auf der Ihre Website oder Anwendung ausgeführt wird. Sie können sich ausschließlich auf den projektspezifischen Code konzentrieren.
Eine noch attraktivere Zeitersparnis ist jedoch die Tatsache, dass Sie sich nicht um die Serverwartung kümmern müssen. Ihr Cloud-Diensteanbieter übernimmt all das für Sie und spart Ihnen nicht nur während der Entwicklung, sondern während der gesamten Lebensdauer Ihrer Site oder Anwendung Zeit.
Wenn Sie jedoch bereits einen Server für ein anderes Projekt warten, ist es für Sie möglicherweise kein großes Problem, ein wenig zusätzliche Wartung zu übernehmen. Wenn man bedenkt, dass es extrem schwierig sein kann, ein Projekt von einer traditionellen Architektur auf eine serverlose zu übertragen, ist es nicht unbedingt eine schlechte Idee, bei dem zu bleiben, was man kennt.

3. Bestimmen Sie Ihr Budget und vergleichen Sie die Kosten
Die serverlose Pay-as-you-go-Finanzierungsstruktur hat sicherlich ihre Reize. Verglichen mit der traditionellen Methode, den Serverplatz im Voraus zu bezahlen, scheint dies die klügste Option zu sein. Schließlich müssen Sie nie für nicht genutzten Speicherplatz bezahlen, wie bei einer Vorauszahlung.
Das bedeutet jedoch nicht, dass serverloses Computing immer ein kostengünstiges Angebot ist. Wie bereits erwähnt, können Funktionen mit langen Laufzeiten Ihre Kosten stark erhöhen. Eine große Website oder eine komplexe Anwendung wird immer noch eine ziemlich hohe Rechnung verursachen.
Darüber hinaus können Situationen, in denen eine große Anzahl von Anfragen auf einmal gestellt werden, Sie am Ende mehr kosten, als Sie vielleicht erwarten. Dies kann eine einfache Verkehrsspitze oder ein weniger angenehmes Ereignis wie einen Denial-of-Service-Angriff (DoS) umfassen. In jedem Fall sind Sie derjenige, der für all diese Anfragen bezahlt.
Kurz gesagt, gehen Sie nicht einfach davon aus, dass eine serverlose Architektur kostengünstiger ist als die traditionellere Alternative, Ihren eigenen Server zu verwalten und den Speicher im Voraus zu bezahlen. Berücksichtigen Sie Ihr Verkehrsaufkommen und die Komplexität Ihres Projekts und vergleichen Sie dann die potenziellen Kosten, bevor Sie sich für das eine oder andere entscheiden.
4. Finden Sie heraus, wie wichtig Skalierbarkeit für Ihr Projekt ist
Der Umgang mit dem Wachstum einer Website oder Anwendung ist eine fortlaufende und nicht immer einfache Aufgabe. Wenn Sie potenzielles Wachstum nicht berücksichtigen, kann Ihr Projekt abstürzen und brennen. Eine Überschätzung kann jedoch dazu führen, dass Sie für kostspieligen Serverplatz bezahlen, den Sie nicht benötigen.
Serverless Computing nimmt Ihnen die Frage der Skalierbarkeit ab und übernimmt die Verantwortung Ihres Providers. Eine serverlose Site oder Anwendung ist hochgradig skalierbar und passt sich sofort an die Bedürfnisse Ihrer Benutzer an. Sie müssen sich keine Sorgen mehr um eine Überlastung Ihres Servers oder andere negative Nebenwirkungen durch riesige Datenverkehrsspitzen machen.
Es gibt jedoch viele Möglichkeiten, Ihr Projekt skalierbar zu machen, insbesondere wenn Sie mit WordPress arbeiten. Wenn es mehr Gründe gibt, sich für ein traditionelles Setup zu entscheiden, sollte die Skalierbarkeit wahrscheinlich nicht der einzige Faktor sein, der die Waage in Richtung Serverless kippt.
5. Berücksichtigen Sie einen Mangel an Kontrolle über Ihren Server
Eines der größten Bedenken beim serverlosen Computing ist die fehlende Kontrolle über Ihren Server. Es ist zwar praktisch, dass Ihr Cloud-Diensteanbieter so viele mühsame Details für Sie übernimmt, aber er schränkt auch Ihren Zugriff auf einige der Funktionen Ihres Projekts ein.
Da Sie keinen Zugriff auf Ihren Server haben, sind Sie für das ordnungsgemäße Funktionieren Ihrer Website oder Anwendung vollständig von Dritten abhängig. Außerdem können Sie Ihre Backend-Prozesse nicht sehen, was das Debugging und die Fehlerbehebung erheblich erschwert als bei einem herkömmlichen Projekt.
Außerdem haben Sie keine Möglichkeit, die Sicherheit Ihres Anbieters im Voraus zu überprüfen. Wenn Sie mit Benutzerdaten oder anderen sensiblen Informationen umgehen, kann dies riskant werden. Sie haben keine Kontrolle darüber, ob Ihr Projekt den Serverspeicherplatz mit anderen Projekten teilt, was zu Datenverlusten führen könnte. Diese Risiken können natürlich gemindert werden, sind aber dennoch eine Überlegung wert.
Abschluss
Serverless Computing ist nicht das einfachste Konzept. Während Sie viel über die vielen Vorteile hören werden, gibt es auch wichtige Nachteile zu berücksichtigen. Mit anderen Worten, die Entscheidung, ob die serverlose Technologie für Ihr Projekt geeignet ist, ist keine leichte Aufgabe.
Um Ihnen den Einstieg zu erleichtern, sind hier fünf Faktoren, die Sie berücksichtigen sollten, wenn Sie entscheiden, ob Sie serverlos werden sollten:
- Berücksichtigen Sie die Größe Ihres Projekts und seine potenzielle Latenz.
- Entscheiden Sie, wie viel Zeit Sie für die Wartung aufwenden können.
- Bestimmen Sie Ihr Budget und vergleichen Sie die Kosten.
- Finden Sie heraus, wie wichtig Skalierbarkeit für Ihr Projekt ist.
- Berücksichtigen Sie einen Mangel an Kontrolle über Ihren Server.
Haben Sie weitere Fragen zum Serverless Computing? Lass es uns im Kommentarbereich unten wissen!
Miniaturansicht des Artikels jkcDesign / shutterstock.com
