
3 Möglichkeiten zum Deployen von Web-Apps - Welche ist die richtige für dein Projekt?

Das Deployen von Webanwendungen ist heutzutage kompliziert. Meistens gibt es mehrere Wege, die du einschlagen kannst. Schauen wir uns die Landschaft an, vergleichen einige Anbieter und finden die richtige Wahl für dein Projekt.
Virtual Private Servers (VPS)
Hier gibt es nicht viele bewegliche Teile. Es ist einfach ein einzelner Computer, der deine Dateien bereitstellt und deine Skripte ausführt.
Architektonisch betrachtet ist das Hosting auf einem Virtual Private Server das einfachste mögliche Setup und daher auch das günstigste, wenn es um das Preis-Leistungs-Verhältnis geht.
Die Preise beginnen in der Regel bei etwa 5$ pro Monat. Wenn du nach einem Anbieter suchst, empfehle ich dir, diese Liste von günstigen VPS-Anbietern anzuschauen.
Ein Virtual Private Server ist nicht nur eine kostengünstige und leistungsstarke, sondern auch eine sehr flexible Option, da du praktisch alles deployen kannst, was du möchtest. Mit Tools wie Docker wird es sogar möglich, mehrere Anwendungen auf einem einzigen Server zu deployen, einschließlich Datenbanken, Frontends, Backends und alles, was du dir vorstellen kannst. Das spart dir bei kleineren Projekten einiges an Geld.
Obwohl es unter der Haube das einfachste Setup ist, bedeutet das nicht, dass es der einfachste Weg zum Starten ist. Normalerweise musst du dich mit Self-Hosting auseinandersetzen und etwas Zeit in die Wartung deiner Maschinen investieren.
Bei Sliplane versuchen wir, das Hosting auf einem VPS lächerlich einfach zu machen. Du kannst 2 Tage kostenlos damit herumspielen.

Simple Cloud
Ich verwende hier den Begriff "Simple Cloud" für PaaS-Anbieter, bei denen du nicht viel über Infrastruktur wissen musst. Ihre Priorität ist es, Deployments einfach zu gestalten. Es ist ein Kompromiss zwischen der Möglichkeit, Anwendungen schnell zu deployen, und eingeschränkten Optionen zur Feinabstimmung.
Zu den Anbietern gehören beispielsweise Digital Ocean, Heroku oder Render.
Unter der Haube ist es normalerweise eine Kombination aus VPS und Load Balancer. Dieses Setup ermöglicht es dir, vertikal (den Server vergrößern) und horizontal (mehr Server hinzufügen) ohne Ausfallzeiten zu skalieren.
Da das Setup komplizierter ist, ist diese Option pro Rechenleistung teurer im Vergleich zur Miete eines einfachen VPS.
Big Cloud
Big Cloud bedeutet, großen Traffic und große Serverrechnungen bewältigen zu können. Die drei großen Hauptakteure im Spiel sind Amazon Web Services, Google Cloud Platform und Microsoft Azure.
Sie bieten eine Vielzahl von Diensten rund um das Deployen von Webanwendungen an. Der Fokus verschiebt sich von Einfachheit zu Skalierbarkeit. Sie sind nicht super intuitiv zu bedienen, aber sobald du alles herausgefunden hast, bist du bereit, praktisch unbegrenzten Traffic zu bewältigen.
Wie machen sie das? Autoscaling ist hier das Schlüsselwort. Das Setup ist eine Kombination aus VPS + Load Balancer + Orchestrator. Ein Orchestrator ist eine Software wie zum Beispiel Kubernetes, die sich automatisch darum kümmert, Server und Instanzen deiner Anwendung bei Bedarf hochzufahren. Wenn der Traffic wächst, fügt es Server hinzu und umgekehrt.
Aber du ahnst es schon: Mehr Komplexität bedeutet höhere Kosten. Auch wenn diese großen Anbieter es sich leisten können, kostenlose Einstiegspläne anzubieten, kannst du einen steilen Preisanstieg erwarten, sobald du das Limit des kostenlosen Kontingents erreicht hast.
+1 Bonus: Content Delivery Networks
Ein Content Delivery Network (CDN) ist ein verteiltes Netzwerk von Servern, das für das Deployment statischer Inhalte optimiert ist. Alles, was du hochlädst, wird automatisch im Netzwerk repliziert, was zu schnellen Ladezeiten für deine Nutzer auf der ganzen Welt führt.
Dies ist wohl die beste Option für das Deployen von global verfügbaren statischen Websites.
Nebenbemerkung: Anfangs hat mich der Begriff "statische Website" oft verwirrt. Statisch bedeutet nicht, dass deine Website nicht interaktiv ist. Single-Page-Anwendungen sind auch statische Seiten, obwohl viel Dynamik stattfinden kann. Der Unterschied besteht darin, dass kein Code auf dem Server ausgeführt wird. Sobald du Server-Side-Rendering zu einer Seite hinzufügst, wird sie zu einer dynamischen Website, da der Server Rechenarbeit leisten muss.
Neben den großen Drei (AWS, GCP und Azure) sind beliebte Anbieter Cloudflare, Akami und Fastly. Einige bieten großzügige kostenlose Kontingente an, um deine statische Website zu deployen.
Zusammenfassung:
- VPS: Günstigste, flexibelste Lösung und mit Docker + Sliplane sehr gut zu handhaben
- Simple Cloud: Einfach zu starten mit mittlerer Skalierbarkeit im Blick
- Big Cloud: Komplexer, aber praktisch unbegrenzt skalierbar
- CDN: Die erste Wahl für das Deployen skalierbarer statischer Seiten