- Themen
- Cloudnative Anwendungen
- Zustandsbehaftet oder zustandslos?
Aktualisiert 28. März 2020 •
Überblick
Der Zustand einer Anwendung (oder eines anderen Objekts) ist ihr Status oder ihre Qualität zu einem bestimmten Zeitpunkt. Ob etwas zustandsbehaftet oder zustandslos ist, hängt davon ab, wie lange der Zustand der Interaktion erfasst wird und wie diese Informationen gespeichert werden müssen.
Acht Erfolgsfaktoren bei der Einführung cloudnativer Anwendungen
Zustandslos
Ein zustandsloser Prozess oder eine zustandslose Anwendung kann als isoliert verstanden werden. Es gibt keine gespeicherten Kenntnisse oder Verweise auf vergangene Transaktionen. Jede Transaktion wird wie zum ersten Mal von Grund auf neu durchgeführt. Zustandslose Anwendungen bieten einen einzelnen Service oder eine Funktion und verwenden CDN-(Content Delivery Network-), Web- oder Druckserver, um diese kurzfristigen Anforderungen zu verarbeiten.
Ein Beispiel für eine zustandslose Transaktion wäre eine Online-Suche, die eine spontane Frage von Ihnen beantwortet. Sie geben Ihre Frage in eine Suchmaschine ein und drücken die Eingabetaste. Wenn Ihre Transaktion versehentlich unterbrochen oder geschlossen wird, starten Sie einfach eine neue. Stellen Sie sich eine zustandslose Transaktion als eine Art Verkaufsautomat vor: eine Anfrage ergibt eine Antwort.
APIs unterstützen zustandslose AnwendungenIcon-Red_Hat-Directional-A-Black-RGB
Zustandsbehaftet
Im Gegensatz dazu kann auf Anwendungen und Prozesse, die ihren Zustand behalten oder zustandsbehaftet sind, mehrfach zugegriffen werden, wie beim Online-Banking oder bei E-Mails. Sie werden im Kontext vorangegangener Transaktionen ausgeführt, und die aktuelle Transaktion kann von deren Ablauf beeinflusst werden. Aus diesen Gründen verwenden zustandsbehaftete Apps jedes Mal dieselben Server, wenn sie eine Anforderung eines Nutzers verarbeiten.
Wenn eine zustandsbehaftete Transaktion unterbrochen wird, wurden der Kontext und die Historie gespeichert, sodass Sie mehr oder weniger dort weitermachen können, wo Sie aufgehört haben. Zustandsbehaftete Apps erfassen Dinge wie bevorzugte Einstellungen, die Fensterposition und die letzten Aktivitäten. Sie können sich zustandsbehaftete Transaktionen als ein fortlaufendes Gespräch mit derselben Person vorstellen.
Die meisten Anwendungen, die wir täglich verwenden, sind zustandsbehaftet. Doch mit fortschreitender Technologie erleichtern Microservices und Container das Erstellen und Bereitstellen von Anwendungen in der Cloud.
Container und Zustände
Mit der zunehmenden Beliebtheit von Cloud Computing und Microservices nimmt auch die Containerisierung von Anwendungen zu, ob zustandsbehaftet oder zustandslos. Container sind Codeeinheiten für eine Anwendung, die zusammen mit ihren Libraries und Abhängigkeiten paketiert sind, sodass sie problemlos verschoben und in vielen verschiedenen Umgebungen ausgeführt werden können, sei es auf einem Desktop, in einer herkömmlichen IT-Infrastruktur oder in einer Cloud.
Ursprünglich wurden Container so programmiert, dass sie zustandslos waren, was ihrer portierbaren, flexiblen Natur entsprach. Mit zunehmender Verbreitung von Containern begann man jedoch, vorhandene zustandsbehaftete Apps zu „containerisieren" (also von Grund auf für eine Ausführung in Containern zu programmieren und zu paketieren). Dadurch wurden diese Apps flexibel und schnell genug für die Containerausführung und verfügten gleichzeitig über die Storage- und Kontextfunktionen zustandsbehafteter Apps.
Zustandsbehaftete Apps können daher zustandslosen Apps sehr ähnlich sein. So können Sie beispielsweise eine App haben, die zwar zustandslos ist und keinen Langzeit-Storage benötigt, es dem Server jedoch ermöglicht, Anforderungen von einem bestimmten Client mithilfe von Cookies zu verfolgen.
Verwaltung zustandsloser und zustandsbehafteter Container
Mit der zunehmenden Beliebtheit von Containern begannen Unternehmen, Möglichkeiten zur Verwaltung sowohl zustandsloser als auch zustandsbehafteter Container mithilfe von Data Storage, Kubernetes und StatefulSets bereitzustellen. Zustandsbehaftung ist heute ein wesentliches Merkmal des Container-Storage. Es geht daher nicht mehr darum, ob, sondern nur wann zustandsbehaftete Container verwendet werden.
Ob Sie zustandsbehaftete oder zustandslose Container verwenden sollten oder nicht, hängt davon ab, welche Art von App Sie erstellen und was die App tun muss. Zustandslosigkeit ist der richtige Weg, wenn Sie nur vorübergehend und schnell Informationen benötigen. Wenn Ihre App mehr Informationen von einer Session zur nächsten speichern soll, sind zustandsbehaftete Container möglicherweise der bessere Weg.
Zustandsbehaftet oder zustandslos– mit RedHat
Ganz gleich, ob es um zustandsbehaftete oder zustandslose Apps geht: RedHat hat, was Sie brauchen. Ob Sie zustandsbehaftete Container auf RedHat OpenShift, unserer unternehmensgerechten Kubernetes-Plattform, orchestrieren oder mit RedHat Integration eine einheitliche Umgebung für die Anwendungsentwicklung erstellen möchten– Sie erhalten Unterstützung durch unseren vielfach ausgezeichneten Support und unser großes Partnernetzwerk.
Erfahren Sie, wie Sie mit allen unseren Produkten Lösungen entwickeln, die Entwicklerproduktivität verbessern und Innovationen fördern können – nach dem OpenSource-Modell.
Mehr erfahren über die Containerisierung von zustandsbehafteten Apps in der CloudIcon-Red_Hat-Directional-A-Black-RGB
Weiterlesen
ARTIKEL
Zustandsbehaftet oder zustandslos?
Ob etwas zustandsbehaftet oder zustandslos ist, hängt davon ab, wie lange der Zustand der Interaktion erfasst wird und wie diese Informationen gespeichert werden müssen.
ARTIKEL
Was ist Quarkus?
Quarkus ist ein Kubernetes-nativer Java Stack für Java Virtual Machines (JVMs) und native Kompilierung, mit dem Java speziell für Container optimiert wird.
ARTIKEL
Was ist Serverless?
Der Begriff „Serverless" (serverlos) bezieht sich auf ein cloudnatives Entwicklungsmodell, bei dem Entwickler Anwendungen erstellen und ausführen können, ohne Server verwalten zu müssen.
Mehr über cloudnative Anwendungen erfahren
Produkte
Eine Plattform, die es Ihnen ermöglicht, Unternehmensanwendungen schnell und effizient über die von Ihnen gewünschte Infrastruktur bereitzustellen.
Verwandte Artikel
- Warum Java-Apps mit Quarkus in RedHat OpenShift entwickeln?
- Was ist rkt?
- Was ist RedHat OpenShift Serverless?
- Cloudnative Anwendungen
- Einführung in Kubernetes-Patterns
- Zustandsbehaftet oder zustandslos
- Was ist der Unterschied zwischen VNF und CNF?
- Was sind Cloud-Anwendungen?
- Was ist eine Container-Registry?
- Was sind Java Frameworks?
- Unternehmensfähige Mobil-Apps entwickeln
- Was ist eine JavaRuntime-Umgebung (JRE)?
- Was ist eine Anwendungsarchitektur?
- Was ist Containerisierung?
- Was ist Function-as-a-Service (FaaS)?
- Was ist Quarkus?
- Was ist ein SDK?
- Was ist Serverless?
- Was ist SOA (Service-Oriented Architecture)?
- Warum RedHat für eine cloudnative Entwicklung?
- Warum die RedHat Version von Quarkus?
- Was ist Java-Anwendungsmodernisierung?
Ressourcen
Video
Cloud Native Development with Red Hat und Amazon Web Services (mit deutschen Untertiteln)
ANALYSTENBERICHT
Total Economic Impact™ von Red Hat OpenShift Cloud Services
IDC: Der Business Value von Red Hat OpenShift
IDC:Unternehmen erhöhen Agilität mit Managed Cloud Services
Red Hat OpenShift on AWS ermöglicht Innovation und Agilität für moderne Unternehmen
WHITEPAPER
RedHat Bericht: Cloudnative Entwicklung– ein Ausblick
DATENBLATT
Red Hat Advanced Cluster Management for Kubernetes
Schnellere Anwendungsentwicklung bei geringeren Kosten und reduzierter Komplexität
ÜBERSICHT
Ein Fundament für Flexibilität schaffen
Case Study
AXA Schweiz setzt auf agile Anwendungsentwicklung, um die Servicebereitstellung zu beschleunigen
Banco Galicia bindet neue Firmenkunden innerhalb von Minuten in intelligente NLP-Plattform ein
KPMG verbessert die Ergebnisse für staatliche Dienstleistungen durch eine moderne Plattform zur Systemintegration
E-Book
Strategy Guide: Cloudnative Umgebungen und Hybrid Cloud
Der Weg zu cloudnativen Anwendungen
Die wichtigsten Überlegungen zu cloudnativen Datenbanken und Datenanalysen
Training
Kostenloses Training