Erste Schritte mit Serverless in weniger als 5 Minuten

TL;DR – Serverless kann einfach sein, solange Sie die richtigen Tools in Ihren Händen haben .
Die meisten Tools sind heute nicht die richtigen Tools, was eine serverlose Architektur zu kompliziert und verworren macht.
Wir glauben, dass es einen besseren Weg gibt.
Ein praktischer Abschnitt befindet sich am Ende dieses Artikels.

Vergangenheit und Zukunft

Beginnen wir mit einer einfachen Tatsache:

Serverlos ist die Zukunft der Technologiewelt

Sie können davon ausgehen, dass die unvermeidliche Zukunft unerwartet über Ihnen gelandet ist, und beginnen, die verschiedenen Tools zu erkunden, die Ihnen die ultimative serverlose Vision versprechen – niedrige Kosten, keine DevOps, nutzungsbasierte Preise.

Zu Ihrer Überraschung macht keine der serverlosen Technologien auf dem Markt Ihr Leben einfacher. Ganz im Gegenteil;

  1. Sie haben Schwierigkeiten, eine einfache Funktion bereitzustellen, müssen mit vielen Einschränkungen von IaaS umgehen (in Bezug auf Datengröße, Laufzeit usw.) und Hunderte von Seiten mit Dokumenten und Fragen lesen
  2. „Keine DevOps“ bedeutete in Wirklichkeit sogar noch mehr DevOps als zuvor; Die Verwaltung eines Repositorys mit verschiedenen serverlosen Funktionen und deren Bereitstellung zur richtigen Zeit am richtigen Ort wird zu einer komplexen Aufgabe für DevOps-Magier
  3. Ihre Einstellung zu einer serverlosen Denkweise zu ändern, fühlt sich äußerst unangenehm an und lässt Sie Ihre Entscheidungen, Ihre Karriere und Ihr Leben im Allgemeinen in Frage stellen.
  4. Sogar nachdem Sie mehrere serverlose Funktionen erstellt haben, stellen Sie fest, dass es eine separate Seifenoper ist, sie miteinander kommunizieren zu lassen. Wie um alles in der Welt willst du das orchestrieren?
  5. Fehlerbehebung. Ach du lieber Gott. Einige sagen, dass das Debuggen von Serverless-Projekten schmerzhafter ist, als es vom Mossad als Foltermaßnahme eingesetzt wurde. Wir können solche Behauptungen weder bestätigen noch dementieren.

Warum ist Serverless heute schlecht?

Um diese Frage zu beantworten, sehen wir uns ein Bild an, wie Ihr serverloser Stack heute aussehen könnte:

Wenn Sie sich das Bild ansehen, was sehen Sie?
All dies sind Funktionen. Kannst du sagen, wer wen anruft? Was macht was? Und warum? Wer hat es wann erstellt?
NEIN.

Wie wäre es mit diesem:

Das sieht nach etwas aus, das jeder verstehen kann; Codierer und Nicht-Codierer gleichermaßen.

Sie verstehen, wo alles beginnt, was jede einzelne Funktion tut und wo alles endet (von links nach rechts). So denken wir eigentlich.
„A ruft B an, und wenn das gelingt, dann machen wir C“.
Wer sagt also, dass Codierung nicht auf die gleiche Weise durchgeführt werden kann? Wer sagt, dass Serverless nicht genauso gemacht werden kann, wie wir es uns vorstellen?

Der Produktprozess

Alle Softwareprodukte durchlaufen denselben Prozess:

  • Planung (mit einem Whiteboard oder Papier)
  • Architecting (das gleiche wie Nr. 1 oder mit Google Draw und so weiter)
  • Implementierung (Ein Code-Editor, verschiedene Hilfsskripte und Infrastrukturen, Protokollsenke)
  • Debugging (wie Nr. 3 + verschiedene Lösungen für Fehler, Überwachung usw.)
  • Bereitstellen (Bereitstellungsskripte, Code-Editoren, SaaS-Lösungen, Überwachungstechniken, Protokollsenke usw.) Dies gilt für neue Funktionen, Bugfixes, Refactorings, Upgrades und alles andere. Derselbe Zyklus, der mindestens 8 verschiedene Tools umfasst, von denen jedes einen anderen Zweck erfüllt und Ihnen am Ende des Monats in Rechnung gestellt wird.

Das muss nicht sein.

In der Praxis – Serverless leicht gemacht

Nicht mehr um den heißen Brei herumreden. Wir möchten in der Lage sein, alles an einem Ort zu planen, zu programmieren, auszuführen und zu debuggen. Wir möchten, dass es einfach, visuell, intuitiv und kostengünstig ist.

Erste Schritte

Beginnen wir damit, uns bei STATEWIZE.com für ein kostenloses Konto anzumelden.

Planung

Wir können uns jede einzelne Sache, die wir entwickeln, als „Flow“ vorstellen. Lassen Sie uns einen neuen Flow erstellen und ihm einige „Zustände“ hinzufügen. Jeder „Zustand“ ist ein logisches Stück, das eine Aktion ausführt (wenn Sie einen technischen Hintergrund haben – dies ist eine „serverlose“ Funktion).

Sie können Zustände miteinander verbinden, um einen Ablauf zu erstellen – bei dem eine Aktion die nächste aufruft, sobald sie abgeschlossen ist.

Jede Verbindung, die vom grünen 🟩-Kästchen ausgeht, wird nur ausgeführt, wenn der aktuelle Status erfolgreich war. Das rote 🟥-Kästchen ist das Gegenteil – für Fehler.

Implementieren

Da jeder der Zustände „etwas tut“, können wir ihm sagen, was er tun soll. Dies kann eine vorgefertigte Aktion sein (z. B. „Irgendwo einen API-Aufruf tätigen“) oder eine benutzerdefinierte serverlose Funktion, die wir direkt im Browser codieren können :

Ausführen und Debuggen

Sobald Ihr Flow abgeschlossen ist, können Sie ihn ausführen und sehen, wie er in Echtzeit ausgeführt wird:

Wenn man sich das anschaut, versteht man es genau was geschah wann, in welcher Reihenfolge und warum.
Sie müssen sich auch nicht um Protokolle kümmern – jede Ausgabe jedes einzelnen Zustands steht Ihnen sofort zur Verfügung, sodass Sie keine Situationen mehr haben, in denen Sie aufgrund fehlender Protokolle oder Kontextdaten „blind“ sind.

Stunden, die Sie normalerweise mit dem Debuggen verbracht haben, können Sie jetzt mit Sonnenbaden oder Fernsehen verbringen, da diese Art von visuellem Debugging ermöglicht es Ihnen, Probleme oder Fehler sofort und ohne Kopfschmerzen zu erkennen.

Integrieren

Mit dem kinderleichten STATEWIZE SDK können Sie diesen serverlosen Ablauf in nur wenigen Codezeilen in Ihr vorhandenes Projekt integrieren:

Es ist erledigt, Ihre serverlosen Flows sind in wenigen Minuten einsatzbereit und Ihre bestehenden Projekte können sie bei Bedarf einfach aufrufen.

Technologie muss nicht exklusiv, schwierig oder umständlich sein. Dinge, die einfach sein können – sollten einfach sein. Für Ihr Leben, für Ihr Geschäft, für alles. Das ist die Mission, die uns antreibt, deshalb tun wir, was wir tun.
Technologie richtig gemacht – bedeutet Belastbarkeit, Zuverlässigkeit, Stabilität und Ruhe. Lassen Sie uns darauf abzielen. 🌅