Contact salesFree trial
Blog

Die Entstehungsgeschichte von Upsun: die Entwicklung einer PaaS

MerkmalePaaSVerbesserungen
Teilen Sie

Upsun ist das neueste Angebot von Platform.sh und basiert auf der bestehenden Container-basierten Architektur der Platform.sh PaaS, die seit fast einem Jahrzehnt aktiv ist und mehrere tausend Anwendungen für ihre Kunden weltweit verwaltet. Upsun kommt mit einem komplett überarbeiteten nutzungsbasierten Preismodell, das die nötige Flexibilität für Projekte mit entkoppelter und komponierbarer Architektur bietet. Für unser Team ist Upsun die wichtigste Markteinführung von Platform.sh seit der Gründung des Unternehmens und wir können es kaum erwarten, es mit Ihnen zu teilen.

Platform.sh: Beseitigung der Angst vor der Bereitstellung

Bevor wir in das Upsun PaaS Produkt eintauchen, lassen Sie uns zunächst einen Schritt zurück in die Vergangenheit machen und einen Blick auf die Reise von Platform.sh werfen. In den Anfängen von Platform.sh, vor etwa 10 Jahren, standen die Cloud und die Anwendungsinfrastruktur den Entwicklern immer im Weg, um das zu erreichen, was sie erreichen wollten. Um mit dem Wettbewerb und den ständig wachsenden Erwartungen der Kunden mithalten zu können, ist eine schnelle Iteration unabhängig vom Ziel Ihrer Anwendung von größter Bedeutung. Aber wenn Iteration bedeutet, dass man die Produktion ein paar Mal pro Woche unterbrechen muss, bekommt man schnell Angst, es überhaupt zu tun. Deshalb wollten wir dieses Problem lösen: die Angst vor der Bereitstellung. Wir haben uns daran gemacht, die Cloud so einfach und robust wie möglich zu gestalten, wobei wir uns mit Platform.sh auf genau diesen Anwendungsfall konzentriert haben: große E-Commerce-Anwendungen mit stark frequentierten, inhaltslastigen CMS-basierten Websites.

Eine der größten Herausforderungen, die für diese Anwendungsfälle spezifisch ist, besteht darin, dass Sie Vorschaumilieus mit nicht-synthetischen Daten benötigen, um robuste Tests durchzuführen. Das Testen einer inhaltsreichen Anwendung oder einer E-Commerce-Lösung mit einem Katalog von einer Million Artikeln und Tausenden von gleichzeitigen Warenkörben ist nicht dasselbe wie das Testen mit ein paar Testartikeln. Genauso wie das Testen einer riesigen Website mit komplizierten Inhalten nicht dasselbe ist wie das Testen einiger weniger Seiten mit Lorem Ipsums.

Deshalb haben wir unsere Technologie zum Klonen von Clustern entwickelt, die es uns ermöglicht, in nur wenigen Minuten Vorschaumodelle zu erstellen, die perfekte Kopien der Produktionsumgebung sind. Wir haben sie so entwickelt, dass sie auf jeder zugrunde liegenden Cloud-Infrastruktur genau gleich läuft. Heute läuft Platform.sh auf AWS, Google Cloud, Azure, OVH Cloud und Orange Cloud. Wir haben alles, was eine große Content- oder E-Commerce-Website benötigt, vollständig in unser Angebot integriert. Ein effizientes, sicheres und zuverlässiges PaaS, das es Entwicklern ermöglichte, kontinuierlich zu integrieren und bereitzustellen, ohne Angst zu haben - sogar freitags.

Die Entwicklung einer Reihe von interessanten PaaS-Technologien

Im Laufe der Entwicklung von Platform.sh PaaS haben wir eine Reihe von innovativen Technologien entwickelt. Dazu gehören unsere Multi-Cloud, hyperdichte Regionen durch unsere Streaming WAF und alle Automatisierungsschichten, die es Unternehmen ermöglichen, Hunderte von Anwendungen gleichzeitig zu betreiben und sie gleichzeitig auf dem neuesten Stand und sicher zu halten.

Wir haben unser Angebot auch einfach gestaltet. Es gibt klare Pläne in T-Shirt-Größe: Small, Medium, Large, XLarge und 2XLarge. Und wenn Sie am Ende mehr Traffic haben: einfach aufstocken. Man muss sich über nichts weiter Gedanken machen, es funktioniert einfach alles.

Als wir mit der Arbeit an Platform.sh begannen, wollten wir das Leben von Softwareentwicklern, die eine Infrastruktur verwalten, erleichtern. Und möglicherweise aufgrund unserer Wurzeln haben wir das Ganze auf High-Level-Abstraktionen aufgebaut. Container, bevor es Docker überhaupt gab. Beschreibende Infrastructure as Code (IaC), bevor sie überhaupt so genannt wurde. All dies bedeutete, dass unsere Kunden, insbesondere Agenturen, die oft verschiedene Stacks für ihre verschiedenen Kunden verwenden, uns schon früh fragten, ob sie Platform.sh für Symfony, Node.js, Rails, Elixir oder Django verwenden könnten - wir konnten natürlich ja sagen.

Headless E-Commerce und CMS waren zu dieser Zeit ebenfalls der letzte Schrei, und so mussten wir sicherstellen, dass unser PaaS mehrere Anwendungsdienste in einem Cluster betreiben konnte. Wenn die anfänglichen Anwendungsfälle von Platform.sh nur ein paar Anwendungen - einen statischen Head mit einem Backend - umfassten, waren Abstraktionen wichtig. Wir wollten also keine feste Grenze festlegen. Eine Anwendung, zwei, ein paar Dutzend: die Primitive sind die gleichen.

Dank unserer Ursprünge im E-Commerce konnten wir die Persistenzschicht sehr gut verwalten - aus Sicht der Compliance, der Leistung und der Konsistenz - und sicherstellen, dass die Benutzer dank der Backups schnell wieder zur Arbeit gehen konnten. Wir haben festgestellt, dass diese Fähigkeiten für unsere Benutzer sehr nützlich sind, unabhängig von ihrem gewählten Tech-Stack. Es scheint, dass es den Betreibern von Spiele-Backends genauso wichtig ist, einen Highscore nicht zu verlieren, wie es Händlern wichtig ist, ihre Aufzeichnungen über einen Verkauf nicht zu verlieren.

Einfachheit ist nicht universell: der Beginn der Upsun-Evolution

Nach einigen Jahren, in denen wir hunderte von verschiedenen Anwendungen mit Platform.sh betrieben haben, wurde uns klar, dass unser einfacher, T-Shirt-großer Ansatz für die meisten CMS- und E-Commerce-Projekte perfekt geeignet war. Wir mussten jedoch noch weiter gehen und den Benutzern mehr Flexibilität bei der Ressourcenzuteilung einräumen, insbesondere bei Anwendungen, die auf entkoppelten und zusammensetzbaren Architekturen basieren. Sie sollten mehr Kontrolle über die Ressourcenzuweisung für jede Komponente ihres Projekts haben und diese Komponenten unabhängig voneinander je nach den Anforderungen ihres Projekts skalieren können.

Die Pläne, die wir mit Platform.sh verkauften, waren einfach: eine Obergrenze auf der Grundlage der maximalen CPU- und RAM-Menge für die Produktionsumgebung. Wir haben automatisch die größte Größe jedes Containertyps (innerhalb der Grenzen des Plans) in diese Pläne eingepasst. Bei den Vorschau-Entwicklungsumgebungen verhielten wir uns anders. Stattdessen haben wir einfach jeden Container so klein wie möglich gemacht. Das war einfach. Und es hat funktioniert. Meistens. Aber mit der Zeit stellten wir fest, dass dieser Plan bei einigen Anwendungstypen nicht mehr funktionierte. Manchmal war es einfach nur etwas umständlich, und manchmal bedeutete es, dass es Arbeitslasten gab, die zwar technisch geeignet waren, die wir aber nicht auf vernünftige Weise ausführen konnten.

Wir haben festgestellt, dass einfach schwer ist; was in einem Anwendungsfall einfach ist, kann in einem anderen Anwendungsfall entsetzlich schwerfällig sein. CMS- und E-Commerce-Projekte haben in der Regel eine sehr stabile Topologie, so dass man als Entwickler dieser Art von Anwendungen nicht oft Dienste hinzufügen oder entfernen muss. Und wenn doch, dann war unser Platform.sh-System einfach. Es werden einfach die Ressourcen zwischen allen Diensten neu zugewiesen. Das bedeutet aber auch, dass, wenn man einen Dienst zu einer bestehenden Umgebung hinzufügt, die anderen Dienste automatisch kleiner werden. Und wenn man einen Dienst hinzufügt und dieser die Maximalwerte übersteigt, muss man zur nächsten T-Shirt-Größe übergehen, die doppelt so groß ist. Dieser einfache Ansatz eignet sich zwar für eine große Anzahl von Topologien - eine Anwendung, eine relationale Datenbank, ein Cache, eine Suchmaschine -, ist aber für viele andere Anwendungen suboptimal.

Viele Kunden schätzten unseren flexiblen Ansatz, mit dem wir versuchten, so viel wie möglich in einen Plan einzubauen. Andere mussten, abhängig von der Typologie ihres Projekts, gegen das Standardverhalten dieser Pläne ankämpfen. Und nachdem wir immer mehr Projekte gesehen haben, die nicht in die Kategorie der CMS- oder E-Commerce-Projekte fielen, haben wir beschlossen, dass es an der Zeit war, ein alternatives Preismodell anzubieten.

Was macht Upsun so besonders?

Während CMS-ähnliche Monolithen immer noch einen großen Teil unseres Marktes ausmachen, gewinnen statische Website-Generatoren sowie entkoppelte und komponierbare Architekturprojekte jeden Monat an Interesse und Marktanteil. Wir wollten Upsun so gestalten, dass es neue Anwendungsfälle abdeckt, die wir im Ökosystem der Webentwicklung entstehen sehen, und das beste auf Entwickler ausgerichtete Erlebnis auf dem Markt bietet. Das neue Angebot von Upsun basiert auf sieben Hauptfunktionen und einem zentralen Konzept: Sie haben die Kontrolle.

Explizite Ressourcenzuweisung

Mit Upsun kann nun jeder Container in jeder Umgebung mit seinen eigenen Einstellungen für die Rechenressourcen (CPU und RAM) konfiguriert werden.

Dies eröffnet viele neue Möglichkeiten für Ihre Produktionsumgebung, u.a:

Garantieren Sie, dass alle Anwendungen und Dienste immer über die notwendigen Ressourcen verfügen, um eingehende Anfragen zu bedienen.

Legen Sie so viele Worker- oder Datenbankinstanzen an, wie Sie benötigen, oder fügen Sie im Handumdrehen einen neuen Microservice hinzu, ohne die vorhandenen Container zu beeinträchtigen.

Erweitern Sie nur bestimmte Anwendungen oder Dienste, wenn Ihr Projekt skaliert, und nicht das gesamte Projekt.

Bewältigung von Spitzenbelastungen durch schnelle Skalierung der spezifischen Engpässe in Ihrer Anwendung.

Die Vorteile gehen jedoch über die Produktionsumgebung hinaus. Dank dieser Flexibilität können Sie Ihre Vorschauumgebungen jetzt nach Belieben skalieren, was unseren Benutzern eine Vielzahl neuer Möglichkeiten eröffnet:

Vorübergehend eine Vorschauumgebung mit denselben Ressourcen wie die Produktionsumgebung skalieren, um Leistungs- und Lasttests zu einem Bruchteil des Preises durchzuführen.

Profile von Anwendungen erstellen und Engpässe identifizieren, indem die zugewiesenen Ressourcen geändert und die Ergebnisse mit Blackfire analysiert werden.

Führen Sie winzige Vorschauumgebungen aus, um die Kosten und den Kohlenstoffverbrauch von temporären Instanzen zu optimieren.

Eine passende nutzungsbasierte Preisgestaltung

Mit den neuen Möglichkeiten der Definition und Zuweisung von Ressourcen mussten wir die Preisgestaltung für unseren Wert neu überdenken. Wir haben unzählige Versuche unternommen, um das effektivste Preismodell zu entwickeln, wobei wir immer drei Ziele im Auge hatten:

Die Preisgestaltung sollte flexibel sein, um den neuen Möglichkeiten unserer Ressourcenzuweisung gerecht zu werden.

Die Preisgestaltung sollte fair und transparent sein.

Die Preisgestaltung sollte für jeden einfach zu verstehen sein.

Eine neue Preisgleichung: Trennung der Ressourcen von unserem Wert

Im Bestreben nach Fairness und Transparenz haben wir uns entschlossen, die Ressourcen - CPU, Arbeitsspeicher und Speicher - von dem Wert zu trennen, den wir bieten - Entwicklungsworkflow und sichere und zuverlässige Bereitstellung.

Auf diese Weise erhalten die Benutzer einen transparenten Überblick darüber, wie die Ressourcen abgerechnet werden. Es garantiert Ihnen, dass Sie Ihre Anwendungen bei Bedarf auf Hunderte von CPUs skalieren können, und zwar zu ähnlichen Kosten wie bei den IaaS-Anbietern, die Sie bereits kennen. Einige unserer Regionen kosten uns mehr als andere, aber wir wenden immer noch die gleichen Preise an. Unser Ziel ist es, Ihnen die Kontrolle zu geben, ohne dass Sie sich mit der Verwaltung einer übermäßig komplexen IaaS-Abrechnung herumschlagen müssen.

Compute-RessourceStündlicher PreisMonatlich (732 Stunden)*
Anwendung CPU$0.034$25
Anwendungsspeicher (1Gb)$0.014$10
Dienst-CPU$0.050$37
Dienst Speicher (1Gb)$0.020$15

Wie AWS EC2 vs. RDS werden unsere Managed Services-Ressourcen so bepreist, dass sie die zusätzliche Automatisierung und Überwachung beinhalten, die für Datenbanken, Warteschlangen und andere Backend-Services erforderlich ist. Und da wir eine verantwortungsvollere Cloud-Nutzung fördern möchten, erhalten unsere kohlenstoffarmen Regionen ebenfalls einen zusätzlichen Rabatt.

Wertschätzung Ihrer Zeit und Förderung der Zusammenarbeit

Platform.sh bietet viele innovative Funktionen und Best Practices. Der Hauptvorteil der Nutzung von Platform.sh besteht jedoch darin, dass Sie Ihre Zeit zurückgewinnen, die Sie sonst oft mit der Verwaltung der Anwendungsinfrastruktur verbringen. Dies gilt auch für Upsun.

Wir haben uns immer darauf konzentriert, sicherzustellen, dass unsere Kunden nicht jeden Monat unzählige Stunden mit der Einrichtung und Wartung kostspieliger Infrastrukturen verbringen müssen. Und je mehr Menschen an Ihren Projekten arbeiten, desto mehr liegt der Nutzen auf der Hand. Aus diesem Grund haben wir beschlossen, unseren Wert auf Benutzerlizenzen zu konzentrieren. Diese Dimension ist der beste Ausdruck für die zurückgewonnene Zeit, die Sie gewinnen.

Wir sind davon überzeugt, dass Sie den größten Nutzen aus Upsun ziehen, wenn alle Projektmitglieder zusammen mit den Entwicklern an dem Projekt arbeiten. Aus diesem Grund führen wir kostenlose Viewer-Lizenzen ein. Projektmitglieder, die nur Umgebungen und eingesetzte Anwendungen betrachten, können Upsun kostenlos nutzen. Laden Sie so viele Beteiligte, Kunden und Prüfer ein, wie Sie möchten, ohne dass dies finanzielle Auswirkungen auf Ihre Projekte hat.

Und das Beste haben wir uns für den Schluss aufgehoben. Mit Upsun sind die Benutzerlizenzen jetzt organisationsbasiert und nicht pro Projekt. Das bedeutet, dass Sie sich keine Gedanken mehr darüber machen müssen, wie Sie einem Benutzer Zugriff auf ein neues Projekt geben.

Projekt-Automatisierung

Für jedes neue Projekt, das Sie erstellen, erhalten Sie eine Reihe von Ressourcen, die bereits enthalten sind, und die Ihnen nur dann in Rechnung gestellt werden, wenn Sie die enthaltenen Kontingente überschreiten:

10 GB Egress-Bandbreite (ausgehend) & 500k eingehende Anfragen

1 GB Speicherplatz in allen Umgebungen

300 Erstellungsminuten

Bis zu 100 Hostnamen und TLS-Zertifikate

Alle Details finden Sie auf der Upsun-Preisseite.

Unterstützung und SLAs

Da der Bedarf an Support mit der Nutzung von Upsun wächst, haben wir uns entschlossen, den Support auf die Organisationsebene zu verlagern. Die Höhe des Supports ist direkt proportional zur Anzahl der Projekte und Nutzer.

Im Gegensatz zu Platform.sh sind unsere Uptime SLAs (99,9/99,99%) pro Projekt. Dies ermöglicht es, innerhalb derselben Organisation nicht-kritische Anwendungen zu optimierten Kosten neben kritischen Anwendungen zu betreiben, die diese zusätzlichen Garantien benötigen.

Ein überarbeitetes Benutzererlebnis mit Fokus auf die CLI

Die Platform.sh CLI war schon immer das Herzstück der Benutzererfahrung und das ist bei Upsun nicht anders. Die neue Upsun-Befehlszeilenschnittstelle verfügt über einen "project:init"-Befehl, der die Erstellung der Upsun YAML-Konfigurationsdateien für die Migration oder Erstellung neuer Projekte vereinfacht.

Außerdem führen wir den "scale"-Befehl ein, mit dem Sie die Ressourcen Ihrer Umgebungscontainer über die CLI festlegen und sie dann nach oben oder unten skalieren können. Vertikal oder horizontal.

Anwendungen können von Anfang an horizontal skaliert werden. Dies bedeutet, dass Sie die zustandslose Skalierbarkeit von Anwendungen ohne Einschränkungen sicherstellen und die Zuverlässigkeit Ihrer Anwendungen erhöhen können.

Beobachtbarkeit auf jeder Ebene

DieBeobachtbarkeit ist für Webanwendungen von entscheidender Bedeutung, da sie es Entwicklern ermöglicht zu verstehen, wie ihre Systeme in Echtzeit funktionieren. Entwickler und Betriebsmitarbeiter können ihre Anwendungen überwachen, Fehler und Anomalien erkennen und mit dem Beobachtungstool von Upsun Probleme schnell identifizieren und beheben, bevor sie zu großen Problemen werden.

Unsere Observability-Tools umfassen:

Metriken und Analysen auf HTTP-Ebene.

Kontinuierliches Profiling von Go- und Node.js-Anwendungen.

Erweitertes Profiling und Application Performance Monitoring von PHP- und Python-Anwendungen.

Metriken für Infrastruktur und Ressourcen.

Mit der Beobachtbarkeit auf jeder Ebene können Entwickler datengestützte Entscheidungen treffen und wertvolle Einblicke in das Verhalten ihrer Anwendungen gewinnen, die es ihnen ermöglichen, ihre Systeme kontinuierlich für optimale Leistung und Effizienz zu verbessern.

Upsun ist kein Ersatz für die Platform.sh PaaS. Es ist das Beste der Platform.sh PaaS, verpackt in ein komplett überarbeitetes Preismodell, das auf die Bedürfnisse von entkoppelten und komponierbaren Architekturprojekten zugeschnitten ist, die durch das "planbasierte" Preismodell eingeschränkt wurden.

Upsun ist jetzt als private Beta für die nächsten Monate verfügbar. Wenn Sie ein oder mehrere Projekte haben, die von diesen neuen Funktionen profitieren würden, lassen Sie es uns wissen über dieses Formular!

Tragen Sie sich jetzt in die Warteliste ein! Wer zuerst kommt, mahlt zuerst!

UPDATE: 07. Dezember 2023

Bringen Sie Ihre Anwendung und Ihr Team zu Upsun PaaS. Sie können sich für eine kostenlose Open-Beta-Testversion* registrieren, in der Sie Upsun in einer produktiven Umgebung mit vielen Ressourcen testen und bewerten können.

Starten Sie eine kostenlose Testversion


*Die kostenlose 5-Tage-Testversion umfasst: 1 Organisation mit 1 Projekt und 2 laufenden Umgebungen; unbegrenzte Anzahl von Containern; unbegrenzte Anzahl von Benutzern; und bis zu 4,5 CPUs, 12 GB Arbeitsspeicher und 20 GB Netzwerkspeicher, die gleichzeitig laufen. Nach Ablauf der Testphase wird Ihr Projekt ausgesetzt, bis Sie eine gültige Zahlungsmethode zu Ihrem Konto hinzufügen. Siehe verfügbare Preise für Details.

Ihr größtes Werk
steht vor der Tür

Kostenloser Test
Discord
© 2025 Platform.sh. All rights reserved.